mirror of
https://github.com/hedge-dev/UnleashedRecomp.git
synced 2025-04-28 13:27:58 +03:00

* Implemented guest-to-host function pointers (WIP) Co-Authored-By: Skyth (Asilkan) <19259897+blueskythlikesclouds@users.noreply.github.com> * function: support more types for function pointers * api: ported BlueBlur headers and misc. research * Move over function-pointers changes from options-menu branch. --------- Co-authored-by: Skyth (Asilkan) <19259897+blueskythlikesclouds@users.noreply.github.com>
32 lines
688 B
C++
32 lines
688 B
C++
#pragma once
|
|
|
|
#include "CSD/Manager/csdmRCPtrAbs.h"
|
|
|
|
namespace Chao::CSD
|
|
{
|
|
template<typename T>
|
|
class RCPtr : RCPtrAbs
|
|
{
|
|
public:
|
|
class RCObjectImp;
|
|
|
|
RCPtr() : RCPtrAbs() {}
|
|
RCPtr(T* in_pMemory) : RCPtrAbs(in_pMemory) {}
|
|
RCPtr(const RCPtr& in_rOther) : RCPtrAbs(in_rOther) {}
|
|
RCPtr(RCPtr&& in_rOther) : RCPtrAbs(std::move(in_rOther)) {}
|
|
|
|
void Attach(T* in_pObject);
|
|
|
|
T* Get() const;
|
|
void Set(const RCPtr& in_rOther);
|
|
|
|
T* operator*() const;
|
|
T* operator->() const;
|
|
|
|
RCPtr& operator=(const RCPtr& in_rOther);
|
|
|
|
operator bool() const;
|
|
};
|
|
}
|
|
|
|
#include "CSD/Manager/csdmRCPtr.inl"
|