clang-format on most of kernel/
This commit is contained in:
@@ -16,11 +16,9 @@
|
||||
|
||||
#include <xenia/xbox.h>
|
||||
|
||||
|
||||
namespace xe {
|
||||
namespace kernel {
|
||||
|
||||
|
||||
// http://www.nirsoft.net/kernel_struct/vista/DISPATCHER_HEADER.html
|
||||
typedef struct {
|
||||
uint32_t type_flags;
|
||||
@@ -29,9 +27,8 @@ typedef struct {
|
||||
uint32_t wait_list_blink;
|
||||
} DISPATCH_HEADER;
|
||||
|
||||
|
||||
class XObject {
|
||||
public:
|
||||
public:
|
||||
enum Type {
|
||||
kTypeModule,
|
||||
kTypeThread,
|
||||
@@ -62,42 +59,38 @@ public:
|
||||
// Reference()
|
||||
// Dereference()
|
||||
|
||||
X_STATUS Wait(
|
||||
uint32_t wait_reason, uint32_t processor_mode, uint32_t alertable,
|
||||
uint64_t* opt_timeout);
|
||||
static X_STATUS SignalAndWait(
|
||||
XObject* signal_object, XObject* wait_object,
|
||||
uint32_t wait_reason, uint32_t processor_mode, uint32_t alertable,
|
||||
uint64_t* opt_timeout);
|
||||
static X_STATUS WaitMultiple(
|
||||
uint32_t count, XObject** objects,
|
||||
uint32_t wait_type, uint32_t wait_reason, uint32_t processor_mode,
|
||||
uint32_t alertable, uint64_t* opt_timeout);
|
||||
X_STATUS Wait(uint32_t wait_reason, uint32_t processor_mode,
|
||||
uint32_t alertable, uint64_t* opt_timeout);
|
||||
static X_STATUS SignalAndWait(XObject* signal_object, XObject* wait_object,
|
||||
uint32_t wait_reason, uint32_t processor_mode,
|
||||
uint32_t alertable, uint64_t* opt_timeout);
|
||||
static X_STATUS WaitMultiple(uint32_t count, XObject** objects,
|
||||
uint32_t wait_type, uint32_t wait_reason,
|
||||
uint32_t processor_mode, uint32_t alertable,
|
||||
uint64_t* opt_timeout);
|
||||
|
||||
static XObject* GetObject(KernelState* kernel_state, void* native_ptr,
|
||||
int32_t as_type = -1);
|
||||
|
||||
virtual void* GetWaitHandle() { return 0; }
|
||||
|
||||
protected:
|
||||
protected:
|
||||
Memory* memory() const;
|
||||
void SetNativePointer(uint32_t native_ptr);
|
||||
|
||||
static uint32_t TimeoutTicksToMs(int64_t timeout_ticks);
|
||||
|
||||
KernelState* kernel_state_;
|
||||
KernelState* kernel_state_;
|
||||
|
||||
private:
|
||||
private:
|
||||
std::atomic<int32_t> handle_ref_count_;
|
||||
std::atomic<int32_t> pointer_ref_count_;
|
||||
|
||||
Type type_;
|
||||
X_HANDLE handle_;
|
||||
Type type_;
|
||||
X_HANDLE handle_;
|
||||
};
|
||||
|
||||
|
||||
} // namespace kernel
|
||||
} // namespace xe
|
||||
|
||||
|
||||
#endif // XENIA_KERNEL_XBOXKRNL_XOBJECT_H_
|
||||
|
||||
Reference in New Issue
Block a user