13#ifndef ML_WEAK_MEMORY_BLOCK_HANDLE_H
14#define ML_WEAK_MEMORY_BLOCK_HANDLE_H
16#include "../mlMemoryManagerDllExport.h"
68#ifndef DOXYGEN_SHOULD_SKIP_THIS
70 void markMemoryBlockWasDeleted();
73 MLMemoryBlock* setMemoryBlock(MLMemoryBlock* memoryBlock);
78 MLMemoryBlock* _memoryBlock;
81 bool _deletionOngoing;
83 friend class MLMemoryBlock;
MLWeakMemoryBlockHandle(const MLWeakMemoryBlockHandle &weakMemoryBlockHandle)
Creates a weak memory block handle from another weak handle.
~MLWeakMemoryBlockHandle()
MLWeakMemoryBlockHandle(const MLMemoryBlockHandle &memoryBlockHandle)
bool deletionOngoing() const
MLWeakMemoryBlockHandle()
Creates a weak memory block handle that is NULL.
MLWeakMemoryBlockHandle & operator=(const MLWeakMemoryBlockHandle &weakMemoryBlockHandle)
MLWeakMemoryBlockHandle & operator=(const MLMemoryBlockHandle &memoryBlockHandle)
bool isNull() const
Returns true if the weak memory block references a NULL memory block.