mirror of
https://github.com/wolfpld/tracy
synced 2025-05-01 13:13:53 +00:00
Use short ptr in VarArray.
This commit is contained in:
parent
390558b627
commit
5620597fb4
@ -16,7 +16,7 @@ class short_ptr
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
tracy_force_inline short_ptr() {}
|
tracy_force_inline short_ptr() {}
|
||||||
tracy_force_inline short_ptr( T* ptr ) { Set( ptr ); }
|
tracy_force_inline short_ptr( const T* ptr ) { Set( ptr ); }
|
||||||
|
|
||||||
tracy_force_inline operator T*() { return Get(); }
|
tracy_force_inline operator T*() { return Get(); }
|
||||||
tracy_force_inline operator const T*() const { return Get(); }
|
tracy_force_inline operator const T*() const { return Get(); }
|
||||||
@ -26,7 +26,7 @@ public:
|
|||||||
tracy_force_inline const T* operator->() const { return Get(); }
|
tracy_force_inline const T* operator->() const { return Get(); }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
tracy_force_inline void Set( T* ptr )
|
tracy_force_inline void Set( const T* ptr )
|
||||||
{
|
{
|
||||||
assert( ( uint64_t( ptr ) & 0xFFFF000000000000 ) == 0 );
|
assert( ( uint64_t( ptr ) & 0xFFFF000000000000 ) == 0 );
|
||||||
memcpy( m_ptr, &ptr, 4 );
|
memcpy( m_ptr, &ptr, 4 );
|
||||||
|
@ -7,8 +7,9 @@
|
|||||||
#include "../common/TracyForceInline.hpp"
|
#include "../common/TracyForceInline.hpp"
|
||||||
#include "tracy_flat_hash_map.hpp"
|
#include "tracy_flat_hash_map.hpp"
|
||||||
#include "TracyCharUtil.hpp"
|
#include "TracyCharUtil.hpp"
|
||||||
#include "TracyMemory.hpp"
|
|
||||||
#include "TracyEvent.hpp"
|
#include "TracyEvent.hpp"
|
||||||
|
#include "TracyMemory.hpp"
|
||||||
|
#include "TracyShortPtr.hpp"
|
||||||
|
|
||||||
namespace tracy
|
namespace tracy
|
||||||
{
|
{
|
||||||
@ -51,10 +52,13 @@ private:
|
|||||||
|
|
||||||
uint8_t m_size;
|
uint8_t m_size;
|
||||||
uint32_t m_hash;
|
uint32_t m_hash;
|
||||||
const T* m_ptr;
|
const short_ptr<T> m_ptr;
|
||||||
};
|
};
|
||||||
#pragma pack()
|
#pragma pack()
|
||||||
|
|
||||||
|
enum { VarArraySize = sizeof( VarArray<int> ) };
|
||||||
|
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline void VarArray<T>::CalcHash()
|
inline void VarArray<T>::CalcHash()
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user