Files
Reboot-Launcher/dependencies/reboot/Project Reboot 3.0/SharedPointer.h
Alessandro Autiero b41e22adeb <feat: New project structure>
<feat: New release>
2023-09-02 15:34:15 +02:00

46 lines
807 B
C++

#pragma once
#include "SharedPointerInternals.h"
template< class ObjectType>
class TSharedPtr
{
public:
ObjectType* Object;
int32 SharedReferenceCount;
int32 WeakReferenceCount;
FORCEINLINE ObjectType* Get()
{
return Object;
}
FORCEINLINE ObjectType* Get() const
{
return Object;
}
FORCEINLINE ObjectType& operator*()
{
return *Object;
}
FORCEINLINE const ObjectType& operator*() const
{
return *Object;
}
FORCEINLINE ObjectType* operator->()
{
return Object;
}
FORCEINLINE ObjectType* operator->() const
{
return Object;
}
};
template< class ObjectType, ESPMode Mode >
class TSharedRef
{
public:
ObjectType* Object;
FSharedReferencer<Mode> SharedReferenceCount;
};