mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	Finished AC and ACT service serialization
This commit is contained in:
		
							parent
							
								
									3fd5c431f1
								
							
						
					
					
						commit
						89e4e49a63
					
				
					 11 changed files with 33 additions and 5 deletions
				
			
		
							
								
								
									
										2
									
								
								TODO
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								TODO
									
										
									
									
									
								
							|  | @ -62,7 +62,7 @@ | ||||||
|         ✔ Wait object @done(19-08-13 16:46) |         ✔ Wait object @done(19-08-13 16:46) | ||||||
|     ☐ Service @started(19-12-23 12:49) |     ☐ Service @started(19-12-23 12:49) | ||||||
|         ✔ AC @started(19-12-23 12:48) @done(19-12-24 22:38) @lasted(1d9h50m3s) |         ✔ AC @started(19-12-23 12:48) @done(19-12-24 22:38) @lasted(1d9h50m3s) | ||||||
|         ☐ ACT |         ✔ ACT @done(19-12-24 23:17) | ||||||
|         ☐ AM |         ☐ AM | ||||||
|         ☐ APT |         ☐ APT | ||||||
|         ☐ BOSS |         ☐ BOSS | ||||||
|  |  | ||||||
|  | @ -6,8 +6,6 @@ | ||||||
| 
 | 
 | ||||||
| #include <array> | #include <array> | ||||||
| #include <memory> | #include <memory> | ||||||
| #include <boost/serialization/base_object.hpp> |  | ||||||
| #include <boost/serialization/shared_ptr.hpp> |  | ||||||
| #include "core/hle/service/service.h" | #include "core/hle/service/service.h" | ||||||
| 
 | 
 | ||||||
| namespace Core { | namespace Core { | ||||||
|  |  | ||||||
|  | @ -5,7 +5,6 @@ | ||||||
| #pragma once | #pragma once | ||||||
| 
 | 
 | ||||||
| #include <memory> | #include <memory> | ||||||
| #include <boost/serialization/base_object.hpp> |  | ||||||
| #include "core/hle/service/ac/ac.h" | #include "core/hle/service/ac/ac.h" | ||||||
| 
 | 
 | ||||||
| namespace Service::AC { | namespace Service::AC { | ||||||
|  |  | ||||||
|  | @ -3,6 +3,7 @@ | ||||||
| // Refer to the license.txt file included.
 | // Refer to the license.txt file included.
 | ||||||
| 
 | 
 | ||||||
| #include "core/hle/service/ac/ac_u.h" | #include "core/hle/service/ac/ac_u.h" | ||||||
|  | #include "common/archives.h" | ||||||
| 
 | 
 | ||||||
| namespace Service::AC { | namespace Service::AC { | ||||||
| 
 | 
 | ||||||
|  | @ -33,3 +34,5 @@ AC_U::AC_U(std::shared_ptr<Module> ac) : Module::Interface(std::move(ac), "ac:u" | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| } // namespace Service::AC
 | } // namespace Service::AC
 | ||||||
|  | 
 | ||||||
|  | SERIALIZE_EXPORT_IMPL(Service::AC::AC_U) | ||||||
|  |  | ||||||
|  | @ -12,6 +12,12 @@ namespace Service::AC { | ||||||
| class AC_U final : public Module::Interface { | class AC_U final : public Module::Interface { | ||||||
| public: | public: | ||||||
|     explicit AC_U(std::shared_ptr<Module> ac); |     explicit AC_U(std::shared_ptr<Module> ac); | ||||||
|  | 
 | ||||||
|  | private: | ||||||
|  |     SERVICE_SERIALIZATION(AC_U, ac) | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| } // namespace Service::AC
 | } // namespace Service::AC
 | ||||||
|  | 
 | ||||||
|  | BOOST_CLASS_EXPORT_KEY(Service::AC::AC_U) | ||||||
|  | BOOST_SERIALIZATION_CONSTRUCT(Service::AC::AC_U) | ||||||
|  |  | ||||||
|  | @ -20,9 +20,13 @@ public: | ||||||
|         Interface(std::shared_ptr<Module> act, const char* name); |         Interface(std::shared_ptr<Module> act, const char* name); | ||||||
|         ~Interface(); |         ~Interface(); | ||||||
| 
 | 
 | ||||||
|     private: |     protected: | ||||||
|         std::shared_ptr<Module> act; |         std::shared_ptr<Module> act; | ||||||
|     }; |     }; | ||||||
|  | private: | ||||||
|  |     template <class Archive> | ||||||
|  |     inline void serialize(Archive& ar, const unsigned int file_version) { } | ||||||
|  |     friend class boost::serialization::access; | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| void InstallInterfaces(Core::System& system); | void InstallInterfaces(Core::System& system); | ||||||
|  |  | ||||||
|  | @ -3,6 +3,7 @@ | ||||||
| // Refer to the license.txt file included.
 | // Refer to the license.txt file included.
 | ||||||
| 
 | 
 | ||||||
| #include "core/hle/service/act/act_a.h" | #include "core/hle/service/act/act_a.h" | ||||||
|  | #include "common/archives.h" | ||||||
| 
 | 
 | ||||||
| namespace Service::ACT { | namespace Service::ACT { | ||||||
| 
 | 
 | ||||||
|  | @ -24,3 +25,5 @@ ACT_A::ACT_A(std::shared_ptr<Module> act) : Module::Interface(std::move(act), "a | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| } // namespace Service::ACT
 | } // namespace Service::ACT
 | ||||||
|  | 
 | ||||||
|  | SERIALIZE_EXPORT_IMPL(Service::ACT::ACT_A) | ||||||
|  |  | ||||||
|  | @ -11,6 +11,11 @@ namespace Service::ACT { | ||||||
| class ACT_A final : public Module::Interface { | class ACT_A final : public Module::Interface { | ||||||
| public: | public: | ||||||
|     explicit ACT_A(std::shared_ptr<Module> act); |     explicit ACT_A(std::shared_ptr<Module> act); | ||||||
|  | private: | ||||||
|  |     SERVICE_SERIALIZATION(ACT_A, act) | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| } // namespace Service::ACT
 | } // namespace Service::ACT
 | ||||||
|  | 
 | ||||||
|  | BOOST_CLASS_EXPORT_KEY(Service::ACT::ACT_A) | ||||||
|  | BOOST_SERIALIZATION_CONSTRUCT(Service::ACT::ACT_A) | ||||||
|  |  | ||||||
|  | @ -3,6 +3,7 @@ | ||||||
| // Refer to the license.txt file included.
 | // Refer to the license.txt file included.
 | ||||||
| 
 | 
 | ||||||
| #include "core/hle/service/act/act_u.h" | #include "core/hle/service/act/act_u.h" | ||||||
|  | #include "common/archives.h" | ||||||
| 
 | 
 | ||||||
| namespace Service::ACT { | namespace Service::ACT { | ||||||
| 
 | 
 | ||||||
|  | @ -20,3 +21,5 @@ ACT_U::ACT_U(std::shared_ptr<Module> act) : Module::Interface(std::move(act), "a | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| } // namespace Service::ACT
 | } // namespace Service::ACT
 | ||||||
|  | 
 | ||||||
|  | SERIALIZE_EXPORT_IMPL(Service::ACT::ACT_U) | ||||||
|  |  | ||||||
|  | @ -11,6 +11,11 @@ namespace Service::ACT { | ||||||
| class ACT_U final : public Module::Interface { | class ACT_U final : public Module::Interface { | ||||||
| public: | public: | ||||||
|     explicit ACT_U(std::shared_ptr<Module> act); |     explicit ACT_U(std::shared_ptr<Module> act); | ||||||
|  | private: | ||||||
|  |     SERVICE_SERIALIZATION(ACT_U, act) | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| } // namespace Service::ACT
 | } // namespace Service::ACT
 | ||||||
|  | 
 | ||||||
|  | BOOST_CLASS_EXPORT_KEY(Service::ACT::ACT_U) | ||||||
|  | BOOST_SERIALIZATION_CONSTRUCT(Service::ACT::ACT_U) | ||||||
|  |  | ||||||
|  | @ -11,6 +11,8 @@ | ||||||
| #include <string> | #include <string> | ||||||
| #include <boost/container/flat_map.hpp> | #include <boost/container/flat_map.hpp> | ||||||
| #include <boost/serialization/assume_abstract.hpp> | #include <boost/serialization/assume_abstract.hpp> | ||||||
|  | #include <boost/serialization/shared_ptr.hpp> | ||||||
|  | #include <boost/serialization/base_object.hpp> | ||||||
| #include "common/common_types.h" | #include "common/common_types.h" | ||||||
| #include "common/construct.h" | #include "common/construct.h" | ||||||
| #include "core/hle/kernel/hle_ipc.h" | #include "core/hle/kernel/hle_ipc.h" | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue