Class ecs_sparse_t

java.lang.Object
com.github.elebras1.flecs.ecs_sparse_t

public class ecs_sparse_t extends Object
struct ecs_sparse_t {
    ecs_vec_t dense;
    ecs_vec_t pages;
    ecs_size_t size;
    int32_t count;
    uint64_t max_id;
    struct ecs_allocator_t *allocator;
    struct ecs_block_allocator_t *page_allocator;
}
  • Method Details

    • layout

      public static final GroupLayout layout()
      The layout of this struct
    • dense$layout

      public static final GroupLayout dense$layout()
      Layout for field:
      ecs_vec_t dense
      
    • dense$offset

      public static final long dense$offset()
      Offset for field:
      ecs_vec_t dense
      
    • dense

      public static MemorySegment dense(MemorySegment struct)
      Getter for field:
      ecs_vec_t dense
      
    • dense

      public static void dense(MemorySegment struct, MemorySegment fieldValue)
      Setter for field:
      ecs_vec_t dense
      
    • pages$layout

      public static final GroupLayout pages$layout()
      Layout for field:
      ecs_vec_t pages
      
    • pages$offset

      public static final long pages$offset()
      Offset for field:
      ecs_vec_t pages
      
    • pages

      public static MemorySegment pages(MemorySegment struct)
      Getter for field:
      ecs_vec_t pages
      
    • pages

      public static void pages(MemorySegment struct, MemorySegment fieldValue)
      Setter for field:
      ecs_vec_t pages
      
    • size$layout

      public static final ValueLayout.OfInt size$layout()
      Layout for field:
      ecs_size_t size
      
    • size$offset

      public static final long size$offset()
      Offset for field:
      ecs_size_t size
      
    • size

      public static int size(MemorySegment struct)
      Getter for field:
      ecs_size_t size
      
    • size

      public static void size(MemorySegment struct, int fieldValue)
      Setter for field:
      ecs_size_t size
      
    • count$layout

      public static final ValueLayout.OfInt count$layout()
      Layout for field:
      int32_t count
      
    • count$offset

      public static final long count$offset()
      Offset for field:
      int32_t count
      
    • count

      public static int count(MemorySegment struct)
      Getter for field:
      int32_t count
      
    • count

      public static void count(MemorySegment struct, int fieldValue)
      Setter for field:
      int32_t count
      
    • max_id$layout

      public static final ValueLayout.OfLong max_id$layout()
      Layout for field:
      uint64_t max_id
      
    • max_id$offset

      public static final long max_id$offset()
      Offset for field:
      uint64_t max_id
      
    • max_id

      public static long max_id(MemorySegment struct)
      Getter for field:
      uint64_t max_id
      
    • max_id

      public static void max_id(MemorySegment struct, long fieldValue)
      Setter for field:
      uint64_t max_id
      
    • allocator$layout

      public static final AddressLayout allocator$layout()
      Layout for field:
      struct ecs_allocator_t *allocator
      
    • allocator$offset

      public static final long allocator$offset()
      Offset for field:
      struct ecs_allocator_t *allocator
      
    • allocator

      public static MemorySegment allocator(MemorySegment struct)
      Getter for field:
      struct ecs_allocator_t *allocator
      
    • allocator

      public static void allocator(MemorySegment struct, MemorySegment fieldValue)
      Setter for field:
      struct ecs_allocator_t *allocator
      
    • page_allocator$layout

      public static final AddressLayout page_allocator$layout()
      Layout for field:
      struct ecs_block_allocator_t *page_allocator
      
    • page_allocator$offset

      public static final long page_allocator$offset()
      Offset for field:
      struct ecs_block_allocator_t *page_allocator
      
    • page_allocator

      public static MemorySegment page_allocator(MemorySegment struct)
      Getter for field:
      struct ecs_block_allocator_t *page_allocator
      
    • page_allocator

      public static void page_allocator(MemorySegment struct, MemorySegment fieldValue)
      Setter for field:
      struct ecs_block_allocator_t *page_allocator
      
    • asSlice

      public static MemorySegment asSlice(MemorySegment array, long index)
      Obtains a slice of arrayParam which selects the array element at index. The returned segment has address arrayParam.address() + index * layout().byteSize()
    • sizeof

      public static long sizeof()
      The size (in bytes) of this struct
    • allocate

      public static MemorySegment allocate(SegmentAllocator allocator)
      Allocate a segment of size layout().byteSize() using allocator
    • allocateArray

      public static MemorySegment allocateArray(long elementCount, SegmentAllocator allocator)
      Allocate an array of size elementCount using allocator. The returned segment has size elementCount * layout().byteSize().
    • reinterpret

      public static MemorySegment reinterpret(MemorySegment addr, Arena arena, Consumer<MemorySegment> cleanup)
      Reinterprets addr using target arena and cleanupAction (if any). The returned segment has size layout().byteSize()
    • reinterpret

      public static MemorySegment reinterpret(MemorySegment addr, long elementCount, Arena arena, Consumer<MemorySegment> cleanup)
      Reinterprets addr using target arena and cleanupAction (if any). The returned segment has size elementCount * layout().byteSize()