class INCVMemAllocator

INCVMemAllocator (Interface)

#include <NCV.hpp>

class INCVMemAllocator
{
public:
    // methods

    virtual
    Ncv32u
    alignment(void) const = 0;

    virtual
    NCVStatus
    alloc(
        NCVMemSegment& seg,
        size_t size
        ) = 0;

    virtual
    NCVStatus
    dealloc(NCVMemSegment& seg) = 0;

    virtual
    NcvBool
    isCounting(void) const = 0;

    virtual
    NcvBool
    isInitialized(void) const = 0;

    virtual
    size_t
    maxSize(void) const = 0;

    virtual
    NCVMemoryType
    memType(void) const = 0;
};

// direct descendants

class NCVMemNativeAllocator;
class NCVMemStackAllocator;