mirror of
https://github.com/skyline-emu/skyline.git
synced 2024-05-29 05:08:46 +02:00
ec71735ece
The following things were fixed: * KSharedMemory * KSyncObject (and how waiting on them works) * Inclusion of Headers What was added: * Transfer Memory * svcSleepThread
27 lines
814 B
C++
27 lines
814 B
C++
#pragma once
|
|
|
|
#include <common.h>
|
|
#include "KObject.h"
|
|
|
|
namespace skyline::kernel::type {
|
|
/**
|
|
* @brief KSyncObject holds the state of a waitable object
|
|
*/
|
|
class KSyncObject : public KObject {
|
|
public:
|
|
bool signalled = false; //!< If the current object is signalled (Used by KEvent as it stays signalled till svcClearEvent or svcClearSignal is called)
|
|
std::vector<pid_t> waitThreads; //!< A vector of threads waiting on this object
|
|
|
|
/**
|
|
* @param state The state of the device
|
|
* @param type The type of the object
|
|
*/
|
|
KSyncObject(const DeviceState &state, skyline::kernel::type::KType type);
|
|
|
|
/**
|
|
* @brief A function for calling when a particular KSyncObject is signalled
|
|
*/
|
|
virtual void Signal();
|
|
};
|
|
}
|