6#ifndef VERIBLOCK_POP_CPP_C_MEMPOOL_H
7#define VERIBLOCK_POP_CPP_C_MEMPOOL_H
9#include "veriblock/pop/c/array.h"
10#include "veriblock/pop/c/entities/atv.h"
11#include "veriblock/pop/c/entities/popdata.h"
12#include "veriblock/pop/c/entities/publication_data.h"
13#include "veriblock/pop/c/entities/vbkblock.h"
14#include "veriblock/pop/c/entities/vtb.h"
15#include "veriblock/pop/c/pop_context.h"
31POP_ENTITY_CUSTOM_FUNCTION(pop_context,
34 const POP_ENTITY_NAME(atv) * atv,
35 POP_ENTITY_NAME(validation_state) * state);
47POP_ENTITY_CUSTOM_FUNCTION(pop_context,
50 const POP_ENTITY_NAME(vtb) * vtb,
51 POP_ENTITY_NAME(validation_state) * state);
64POP_ENTITY_CUSTOM_FUNCTION(pop_context,
67 const POP_ENTITY_NAME(vbk_block) * vbk_block,
68 POP_ENTITY_NAME(validation_state) * state);
76POP_ENTITY_CUSTOM_FUNCTION(pop_context,
77 POP_ENTITY_NAME(pop_data) *,
78 mempool_generate_pop_data);
88POP_ENTITY_CUSTOM_FUNCTION(pop_context,
89 POP_ENTITY_NAME(atv) *,
91 POP_ARRAY_NAME(u8)
id);
101POP_ENTITY_CUSTOM_FUNCTION(pop_context,
102 POP_ENTITY_NAME(vtb) *,
104 POP_ARRAY_NAME(u8)
id);
114POP_ENTITY_CUSTOM_FUNCTION(pop_context,
115 POP_ENTITY_NAME(vbk_block) *,
116 mempool_get_vbk_block,
117 POP_ARRAY_NAME(u8)
id);
128POP_ENTITY_CUSTOM_FUNCTION(pop_context, POP_ARRAY_NAME(atv), mempool_get_atvs);
139POP_ENTITY_CUSTOM_FUNCTION(pop_context, POP_ARRAY_NAME(vtb), mempool_get_vtbs);
150POP_ENTITY_CUSTOM_FUNCTION(pop_context,
151 POP_ARRAY_NAME(vbk_block),
152 mempool_get_vbk_blocks);
163POP_ENTITY_CUSTOM_FUNCTION(pop_context,
165 mempool_get_in_flight_atvs);
176POP_ENTITY_CUSTOM_FUNCTION(pop_context,
178 mempool_get_in_flight_vtbs);
189POP_ENTITY_CUSTOM_FUNCTION(pop_context,
190 POP_ARRAY_NAME(vbk_block),
191 mempool_get_in_flight_vbk_blocks);
203POP_ENTITY_CUSTOM_FUNCTION(pop_context,
204 POP_ARRAY_NAME(array_u8),
205 mempool_get_missing_btc_blocks);
214POP_ENTITY_CUSTOM_FUNCTION(pop_context,
217 const POP_ENTITY_NAME(pop_data) * pop_data);
224POP_ENTITY_CUSTOM_FUNCTION(pop_context,
void, mempool_clean_up);
231POP_ENTITY_CUSTOM_FUNCTION(pop_context,
void, mempool_clear);