diff options
author | bunnei <bunneidev@gmail.com> | 2021-06-07 00:39:11 +0200 |
---|---|---|
committer | bunnei <bunneidev@gmail.com> | 2021-06-07 00:39:11 +0200 |
commit | 611983679593d8a666551254bc97490effbb6519 (patch) | |
tree | 19e9f1fe9664a6b6558258c1c58a30d803e30d93 /src/core/hle/kernel/k_auto_object.h | |
parent | hle: kernel: Refactor to allocate a ServiceThread per service handler. (diff) | |
download | yuzu-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 'src/core/hle/kernel/k_auto_object.h')
-rw-r--r-- | src/core/hle/kernel/k_auto_object.h | 11 |
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> |