ProcessManager: Implement almost all of pm:shell
This commit is contained in:
@@ -31,7 +31,15 @@ class Registration {
|
||||
u64* out_pid;
|
||||
Result result;
|
||||
};
|
||||
|
||||
class AutoProcessListLock {
|
||||
private:
|
||||
bool has_lock;
|
||||
public:
|
||||
AutoProcessListLock();
|
||||
~AutoProcessListLock();
|
||||
void Unlock();
|
||||
};
|
||||
|
||||
static void InitializeSystemResources();
|
||||
static IWaitable *GetProcessLaunchStartEvent();
|
||||
static Result ProcessLaunchStartCallback(Handle *handles, size_t num_handles, u64 timeout);
|
||||
@@ -44,12 +52,19 @@ class Registration {
|
||||
static void RemoveProcessFromList(u64 pid);
|
||||
static void SetProcessState(u64 pid, ProcessState new_state);
|
||||
|
||||
static Process *GetProcess(u64 pid);
|
||||
static Process *GetProcessByTitleId(u64 tid);
|
||||
static Handle GetProcessEventHandle();
|
||||
static void GetProcessEventType(u64 *out_pid, u64 *out_type);
|
||||
static Handle GetDebugTitleEventHandle();
|
||||
static Handle GetDebugApplicationEventHandle();
|
||||
|
||||
static void HandleProcessLaunch();
|
||||
static void SignalFinishLaunchProcess();
|
||||
static Result LaunchProcess(u64 title_id, FsStorageId storage_id, u64 launch_flags, u64 *out_pid);
|
||||
static Result LaunchProcessByTidSid(TidSid tid_sid, u64 launch_flags, u64 *out_pid);
|
||||
|
||||
static bool HasApplicationProcess();
|
||||
static bool HasApplicationProcess(Process **out);
|
||||
static void EnsureApplicationResourcesAvailable();
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user