Interface ExtentAllocI

  • All Superinterfaces:
    org.lwjgl.system.CallbackI, org.lwjgl.system.CallbackI.P, org.lwjgl.system.Pointer
    All Known Implementing Classes:
    ExtentAlloc


    @FunctionalInterface
    public interface ExtentAllocI
    extends org.lwjgl.system.CallbackI.P
    Instances of this interface may be set to the ExtentHooks struct.

    Type

     void* (*) (
         extent_hooks_t *extent_hooks,
         void *new_addr,
         size_t size,
         size_t alignment,
         bool *zero,
         bool *commit,
         unsigned int arena_ind
     )
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.lwjgl.system.CallbackI

        org.lwjgl.system.CallbackI.B, org.lwjgl.system.CallbackI.D, org.lwjgl.system.CallbackI.F, org.lwjgl.system.CallbackI.I, org.lwjgl.system.CallbackI.J, org.lwjgl.system.CallbackI.P, org.lwjgl.system.CallbackI.S, org.lwjgl.system.CallbackI.V, org.lwjgl.system.CallbackI.Z
      • Nested classes/interfaces inherited from interface org.lwjgl.system.Pointer

        org.lwjgl.system.Pointer.Default
    • Field Summary

      Fields 
      Modifier and Type Field and Description
      static java.lang.String SIGNATURE 
      • Fields inherited from interface org.lwjgl.system.Pointer

        POINTER_SHIFT, POINTER_SIZE
    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method and Description
      default long callback(long args) 
      default java.lang.String getSignature() 
      long invoke(long extent_hooks, long new_addr, long size, long alignment, long zero, long commit, int arena_ind)
      Extent allocation hook.
      • Methods inherited from interface org.lwjgl.system.CallbackI

        address
    • Method Detail

      • getSignature

        default java.lang.String getSignature()
        Specified by:
        getSignature in interface org.lwjgl.system.CallbackI
      • callback

        default long callback(long args)
        Specified by:
        callback in interface org.lwjgl.system.CallbackI.P
      • invoke

        long invoke(long extent_hooks,
                    long new_addr,
                    long size,
                    long alignment,
                    long zero,
                    long commit,
                    int arena_ind)
        Extent allocation hook.

        An extent allocation function conforms to the extent_alloc_t type and upon success returns a pointer to size bytes of mapped memory on behalf of arena arena_ind such that the extent's base address is a multiple of alignment, as well as setting *zero to indicate whether the extent is zeroed and *commit to indicate whether the extent is committed. Upon error the function returns NULL and leaves *zero and *commit unmodified. The size parameter is always a multiple of the page size. The alignment parameter is always a power of two at least as large as the page size. Zeroing is mandatory if *zero is true upon function entry. Committing is mandatory if *commit is true upon function entry. If new_addr is not NULL, the returned pointer must be new_addr on success or NULL on error. Committed memory may be committed in absolute terms as on a system that does not overcommit, or in implicit terms as on a system that overcommits and satisfies physical memory needs on demand via soft page faults. Note that replacing the default extent allocation function makes the arena's arena.i.dss setting irrelevant.

        Parameters:
        extent_hooks -
        new_addr -
        size -
        alignment -
        zero -
        commit -
        arena_ind -