summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/cmif_types.h
diff options
context:
space:
mode:
authorLiam <byteslice@airmail.cc>2024-01-30 08:18:48 +0100
committerLiam <byteslice@airmail.cc>2024-02-02 15:32:10 +0100
commit78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604 (patch)
tree47bd02cd64efc22330d4907258b659ace76c1935 /src/core/hle/service/cmif_types.h
parentMerge pull request #12857 from liamwhite/const (diff)
downloadyuzu-78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604.tar
yuzu-78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604.tar.gz
yuzu-78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604.tar.bz2
yuzu-78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604.tar.lz
yuzu-78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604.tar.xz
yuzu-78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604.tar.zst
yuzu-78f72b3bf5aca16f8f3c5fd14c14eb0dae6e0604.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/cmif_types.h27
1 files changed, 25 insertions, 2 deletions
diff --git a/src/core/hle/service/cmif_types.h b/src/core/hle/service/cmif_types.h
index dc06169f4..84f4c2456 100644
--- a/src/core/hle/service/cmif_types.h
+++ b/src/core/hle/service/cmif_types.h
@@ -4,10 +4,9 @@
#pragma once
#include <memory>
+#include <span>
-#include "common/common_funcs.h"
#include "common/common_types.h"
-#include "core/hle/service/hle_ipc.h"
namespace Service {
@@ -22,8 +21,10 @@ class Out {
public:
using Type = T;
+ /* implicit */ Out(const Out& t) : raw(t.raw) {}
/* implicit */ Out(AutoOut<Type>& t) : raw(&t.raw) {}
/* implicit */ Out(Type* t) : raw(t) {}
+ Out& operator=(const Out&) = delete;
Type* Get() const {
return raw;
@@ -37,6 +38,10 @@ public:
return raw;
}
+ operator Type*() const {
+ return raw;
+ }
+
private:
Type* raw;
};
@@ -113,8 +118,10 @@ class OutCopyHandle {
public:
using Type = T*;
+ /* implicit */ OutCopyHandle(const OutCopyHandle& t) : raw(t.raw) {}
/* implicit */ OutCopyHandle(AutoOut<Type>& t) : raw(&t.raw) {}
/* implicit */ OutCopyHandle(Type* t) : raw(t) {}
+ OutCopyHandle& operator=(const OutCopyHandle&) = delete;
Type* Get() const {
return raw;
@@ -128,6 +135,10 @@ public:
return raw;
}
+ operator Type*() const {
+ return raw;
+ }
+
private:
Type* raw;
};
@@ -137,8 +148,10 @@ class OutMoveHandle {
public:
using Type = T*;
+ /* implicit */ OutMoveHandle(const OutMoveHandle& t) : raw(t.raw) {}
/* implicit */ OutMoveHandle(AutoOut<Type>& t) : raw(&t.raw) {}
/* implicit */ OutMoveHandle(Type* t) : raw(t) {}
+ OutMoveHandle& operator=(const OutMoveHandle&) = delete;
Type* Get() const {
return raw;
@@ -152,6 +165,10 @@ public:
return raw;
}
+ operator Type*() const {
+ return raw;
+ }
+
private:
Type* raw;
};
@@ -248,8 +265,10 @@ public:
static constexpr BufferAttr Attr = static_cast<BufferAttr>(A | BufferAttr_In | BufferAttr_FixedSize);
using Type = T;
+ /* implicit */ OutLargeData(const OutLargeData& t) : raw(t.raw) {}
/* implicit */ OutLargeData(Type* t) : raw(t) {}
/* implicit */ OutLargeData(AutoOut<T>& t) : raw(&t.raw) {}
+ OutLargeData& operator=(const OutLargeData&) = delete;
Type* Get() const {
return raw;
@@ -263,6 +282,10 @@ public:
return raw;
}
+ operator Type*() const {
+ return raw;
+ }
+
private:
Type* raw;
};