Просмотр исходного кода

core: memory: Add templated GetPointer methods.

bunnei 5 лет назад
Родитель
Сommit
24e1e17a8a
1 измененных файлов с 10 добавлено и 0 удалено
  1. 10 0
      src/core/memory.h

+ 10 - 0
src/core/memory.h

@@ -116,6 +116,11 @@ public:
      */
      */
     u8* GetPointer(VAddr vaddr);
     u8* GetPointer(VAddr vaddr);
 
 
+    template <typename T>
+    T* GetPointer(VAddr vaddr) {
+        return reinterpret_cast<T*>(GetPointer(vaddr));
+    }
+
     /**
     /**
      * Gets a pointer to the given address.
      * Gets a pointer to the given address.
      *
      *
@@ -126,6 +131,11 @@ public:
      */
      */
     const u8* GetPointer(VAddr vaddr) const;
     const u8* GetPointer(VAddr vaddr) const;
 
 
+    template <typename T>
+    const T* GetPointer(VAddr vaddr) const {
+        return reinterpret_cast<T*>(GetPointer(vaddr));
+    }
+
     /**
     /**
      * Reads an 8-bit unsigned value from the current process' address space
      * Reads an 8-bit unsigned value from the current process' address space
      * at the given virtual address.
      * at the given virtual address.