summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/k_auto_object.h
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2021-06-07 00:39:11 +0200
committerbunnei <bunneidev@gmail.com>2021-06-07 00:39:11 +0200
commit611983679593d8a666551254bc97490effbb6519 (patch)
tree19e9f1fe9664a6b6558258c1c58a30d803e30d93 /src/core/hle/kernel/k_auto_object.h
parenthle: kernel: Refactor to allocate a ServiceThread per service handler. (diff)
downloadyuzu-611983679593d8a666551254bc97490effbb6519.tar
yuzu-611983679593d8a666551254bc97490effbb6519.tar.gz
yuzu-611983679593d8a666551254bc97490effbb6519.tar.bz2
yuzu-611983679593d8a666551254bc97490effbb6519.tar.lz
yuzu-611983679593d8a666551254bc97490effbb6519.tar.xz
yuzu-611983679593d8a666551254bc97490effbb6519.tar.zst
yuzu-611983679593d8a666551254bc97490effbb6519.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/kernel/k_auto_object.h11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/core/hle/kernel/k_auto_object.h b/src/core/hle/kernel/k_auto_object.h
index bc18582be..88a052f65 100644
--- a/src/core/hle/kernel/k_auto_object.h
+++ b/src/core/hle/kernel/k_auto_object.h
@@ -7,10 +7,11 @@
#include <atomic>
#include <string>
+#include <boost/intrusive/rbtree.hpp>
+
#include "common/assert.h"
#include "common/common_funcs.h"
#include "common/common_types.h"
-#include "common/intrusive_red_black_tree.h"
#include "core/hle/kernel/k_class_token.h"
namespace Kernel {
@@ -175,7 +176,7 @@ private:
class KAutoObjectWithListContainer;
-class KAutoObjectWithList : public KAutoObject {
+class KAutoObjectWithList : public KAutoObject, public boost::intrusive::set_base_hook<> {
public:
explicit KAutoObjectWithList(KernelCore& kernel_) : KAutoObject(kernel_) {}
@@ -192,6 +193,10 @@ public:
}
}
+ friend bool operator<(const KAutoObjectWithList& left, const KAutoObjectWithList& right) {
+ return &left < &right;
+ }
+
public:
virtual u64 GetId() const {
return reinterpret_cast<u64>(this);
@@ -203,8 +208,6 @@ public:
private:
friend class KAutoObjectWithListContainer;
-
- Common::IntrusiveRedBlackTreeNode list_node;
};
template <typename T>