mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-11-03 23:28:48 +00:00 
			
		
		
		
	- renamed hle_syscall to just syscall
- added service.h as an initial service interface
This commit is contained in:
		
							parent
							
								
									7ea7585898
								
							
						
					
					
						commit
						02fbd42e7f
					
				
					 7 changed files with 157 additions and 106 deletions
				
			
		
							
								
								
									
										60
									
								
								src/core/hle/service/service.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								src/core/hle/service/service.h
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,60 @@
 | 
			
		|||
// Copyright 2014 Citra Emulator Project
 | 
			
		||||
// Licensed under GPLv2
 | 
			
		||||
// Refer to the license.txt file included.
 | 
			
		||||
 | 
			
		||||
#pragma once
 | 
			
		||||
 | 
			
		||||
#include <string>
 | 
			
		||||
 | 
			
		||||
#include "common/common_types.h"
 | 
			
		||||
#include "core/hle/syscall.h"
 | 
			
		||||
 | 
			
		||||
////////////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
// Namespace Service
 | 
			
		||||
 | 
			
		||||
namespace Service {
 | 
			
		||||
 | 
			
		||||
typedef s32 NativeUID;
 | 
			
		||||
 | 
			
		||||
/// Interface to a CTROS service
 | 
			
		||||
class Interface {
 | 
			
		||||
public:
 | 
			
		||||
 | 
			
		||||
    virtual ~Interface() {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the UID for the serice
 | 
			
		||||
     * @return UID of service in native format
 | 
			
		||||
     */
 | 
			
		||||
    NativeUID GetUID() const {
 | 
			
		||||
        return (NativeUID)m_uid;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the string name used by CTROS for a service
 | 
			
		||||
     * @return String name of service
 | 
			
		||||
     */
 | 
			
		||||
    virtual std::string GetName() {
 | 
			
		||||
        return "[UNKNOWN SERVICE NAME]";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Gets the string name used by CTROS for a service
 | 
			
		||||
     * @return Port name of service
 | 
			
		||||
     */
 | 
			
		||||
    virtual std::string GetPort() {
 | 
			
		||||
        return "[UNKNOWN SERVICE PORT]";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * Called when svcSendSyncRequest is called, loads command buffer and executes comand
 | 
			
		||||
     * @return Return result of svcSendSyncRequest passed back to user app
 | 
			
		||||
     */
 | 
			
		||||
    virtual Syscall::Result Sync() = 0;
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
    u32 m_uid;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
} // namespace
 | 
			
		||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue