mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	Port "kernel/event: Make data members private" from yuzu (#4077)
* kernel/event: Make data members private Instead we can simply provide accessors to the required data instead of giving external read/write access to the variables directly. * fix compile error
This commit is contained in:
		
							parent
							
								
									75927ee462
								
							
						
					
					
						commit
						642f0bd62b
					
				
					 5 changed files with 19 additions and 11 deletions
				
			
		|  | @ -260,7 +260,7 @@ std::vector<std::unique_ptr<WaitTreeItem>> WaitTreeEvent::GetChildren() const { | |||
| 
 | ||||
|     list.push_back(std::make_unique<WaitTreeText>( | ||||
|         tr("reset type = %1") | ||||
|             .arg(GetResetTypeQString(static_cast<const Kernel::Event&>(object).reset_type)))); | ||||
|             .arg(GetResetTypeQString(static_cast<const Kernel::Event&>(object).GetResetType())))); | ||||
|     return list; | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -25,16 +25,18 @@ public: | |||
|     std::string GetName() const override { | ||||
|         return name; | ||||
|     } | ||||
|     void SetName(const std::string& name) { | ||||
|         this->name = name; | ||||
|     } | ||||
| 
 | ||||
|     static const HandleType HANDLE_TYPE = HandleType::Event; | ||||
|     HandleType GetHandleType() const override { | ||||
|         return HANDLE_TYPE; | ||||
|     } | ||||
| 
 | ||||
|     ResetType reset_type; ///< Current ResetType
 | ||||
| 
 | ||||
|     bool signaled;    ///< Whether the event has already been signaled
 | ||||
|     std::string name; ///< Name of event (optional)
 | ||||
|     ResetType GetResetType() const { | ||||
|         return reset_type; | ||||
|     } | ||||
| 
 | ||||
|     bool ShouldWait(Thread* thread) const override; | ||||
|     void Acquire(Thread* thread) override; | ||||
|  | @ -47,6 +49,11 @@ public: | |||
| private: | ||||
|     Event(); | ||||
|     ~Event() override; | ||||
| 
 | ||||
|     ResetType reset_type; ///< Current ResetType
 | ||||
| 
 | ||||
|     bool signaled;    ///< Whether the event has already been signaled
 | ||||
|     std::string name; ///< Name of event (optional)
 | ||||
| }; | ||||
| 
 | ||||
| } // namespace Kernel
 | ||||
|  |  | |||
|  | @ -938,8 +938,9 @@ static ResultCode QueryMemory(MemoryInfo* memory_info, PageInfo* page_info, u32 | |||
| 
 | ||||
| /// Create an event
 | ||||
| static ResultCode CreateEvent(Handle* out_handle, u32 reset_type) { | ||||
|     SharedPtr<Event> evt = Event::Create(static_cast<ResetType>(reset_type)); | ||||
|     evt->name = Common::StringFromFormat("event-%08x", Core::CPU().GetReg(14)); | ||||
|     SharedPtr<Event> evt = | ||||
|         Event::Create(static_cast<ResetType>(reset_type), | ||||
|                       Common::StringFromFormat("event-%08x", Core::CPU().GetReg(14))); | ||||
|     CASCADE_RESULT(*out_handle, g_handle_table.Create(std::move(evt))); | ||||
| 
 | ||||
|     LOG_TRACE(Kernel_SVC, "called reset_type=0x{:08X} : created handle=0x{:08X}", reset_type, | ||||
|  |  | |||
|  | @ -37,7 +37,7 @@ void Module::Interface::ConnectAsync(Kernel::HLERequestContext& ctx) { | |||
|     ac->connect_event = rp.PopObject<Kernel::Event>(); | ||||
| 
 | ||||
|     if (ac->connect_event) { | ||||
|         ac->connect_event->name = "AC:connect_event"; | ||||
|         ac->connect_event->SetName("AC:connect_event"); | ||||
|         ac->connect_event->Signal(); | ||||
|         ac->ac_connected = true; | ||||
|     } | ||||
|  | @ -67,7 +67,7 @@ void Module::Interface::CloseAsync(Kernel::HLERequestContext& ctx) { | |||
|     } | ||||
| 
 | ||||
|     if (ac->close_event) { | ||||
|         ac->close_event->name = "AC:close_event"; | ||||
|         ac->close_event->SetName("AC:close_event"); | ||||
|         ac->close_event->Signal(); | ||||
|     } | ||||
| 
 | ||||
|  | @ -134,7 +134,7 @@ void Module::Interface::RegisterDisconnectEvent(Kernel::HLERequestContext& ctx) | |||
| 
 | ||||
|     ac->disconnect_event = rp.PopObject<Kernel::Event>(); | ||||
|     if (ac->disconnect_event) { | ||||
|         ac->disconnect_event->name = "AC:disconnect_event"; | ||||
|         ac->disconnect_event->SetName("AC:disconnect_event"); | ||||
|     } | ||||
| 
 | ||||
|     IPC::RequestBuilder rb = rp.MakeBuilder(1, 0); | ||||
|  |  | |||
|  | @ -354,7 +354,7 @@ void GSP_GPU::RegisterInterruptRelayQueue(Kernel::HLERequestContext& ctx) { | |||
|     // TODO(mailwl): return right error code instead assert
 | ||||
|     ASSERT_MSG((interrupt_event != nullptr), "handle is not valid!"); | ||||
| 
 | ||||
|     interrupt_event->name = "GSP_GSP_GPU::interrupt_event"; | ||||
|     interrupt_event->SetName("GSP_GSP_GPU::interrupt_event"); | ||||
| 
 | ||||
|     SessionData* session_data = GetSessionData(ctx.Session()); | ||||
|     session_data->interrupt_event = std::move(interrupt_event); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue