コード例 #1
0
ファイル: uc_can_io.cpp プロジェクト: 0919061/uavcan
/*
 * CanTxQueue::Entry
 */
void CanTxQueue::Entry::destroy(Entry*& obj, IPoolAllocator& allocator)
{
    if (obj != NULL)
    {
        obj->~Entry();
        allocator.deallocate(obj);
        obj = NULL;
    }
}
コード例 #2
0
ファイル: multiset.hpp プロジェクト: STMPNGRND/libuavcan
 static void destroy(Chunk*& obj, IPoolAllocator& allocator)
 {
     if (obj != NULL)
     {
         obj->~Chunk();
         allocator.deallocate(obj);
         obj = NULL;
     }
 }
コード例 #3
0
void TransferBufferManagerEntry::Block::destroy(Block*& obj, IPoolAllocator& allocator)
{
    if (obj != UAVCAN_NULLPTR)
    {
        obj->~Block();
        allocator.deallocate(obj);
        obj = UAVCAN_NULLPTR;
    }
}
コード例 #4
0
ファイル: map.hpp プロジェクト: 0919061/uavcan
 static void destroy(KVGroup*& obj, IPoolAllocator& allocator)
 {
     if (obj != NULL)
     {
         obj->~KVGroup();
         allocator.deallocate(obj);
         obj = NULL;
     }
 }
コード例 #5
0
void DynamicTransferBufferManagerEntry::destroy(DynamicTransferBufferManagerEntry*& obj, IPoolAllocator& allocator)
{
    if (obj != NULL)
    {
        obj->~DynamicTransferBufferManagerEntry();
        allocator.deallocate(obj);
        obj = NULL;
    }
}