22 lines
834 B
C
22 lines
834 B
C
|
|
// smallobject_cold_iface_v4.h - SmallObject HotHeap v4 Cold Interface (境界 API のみ)
|
|||
|
|
//
|
|||
|
|
// 役割:
|
|||
|
|
// - HotBox_v4 と Superslab/Warm/Remote を繋ぐ関数ポインタの箱を定義する。
|
|||
|
|
// - 実装は後続フェーズで追加し、いまは型と宣言だけを置く。
|
|||
|
|
#pragma once
|
|||
|
|
|
|||
|
|
#include <stdbool.h>
|
|||
|
|
#include <stdint.h>
|
|||
|
|
|
|||
|
|
#include "smallobject_hotbox_v4_box.h"
|
|||
|
|
|
|||
|
|
typedef struct SmallColdIfaceV4 {
|
|||
|
|
small_page_v4* (*refill_page)(small_heap_ctx_v4*, uint32_t class_idx);
|
|||
|
|
void (*retire_page)(small_heap_ctx_v4*, uint32_t class_idx, small_page_v4* page);
|
|||
|
|
bool (*remote_push)(small_page_v4* page, void* ptr, uint32_t self_tid);
|
|||
|
|
void (*remote_drain)(small_heap_ctx_v4*);
|
|||
|
|
} SmallColdIfaceV4;
|
|||
|
|
|
|||
|
|
// Cold iface accessor(実装は後続フェーズ)
|
|||
|
|
const SmallColdIfaceV4* small_cold_iface_v4_get(void);
|