API Reference Manual  1.45.0
api/spec/stash.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright (c) 2020-2023 Nokia
3  */
4 
11 #ifndef ODP_API_SPEC_STASH_H_
12 #define ODP_API_SPEC_STASH_H_
13 #include <odp/visibility_begin.h>
14 
15 #ifdef __cplusplus
16 extern "C" {
17 #endif
18 
19 #include <odp/api/stash_types.h>
20 
41 
50 
70 odp_stash_t odp_stash_create(const char *name, const odp_stash_param_t *param);
71 
85 
94 odp_stash_t odp_stash_lookup(const char *name);
95 
103 
129 int32_t odp_stash_put(odp_stash_t stash, const void *obj, int32_t num);
130 
148 int32_t odp_stash_put_batch(odp_stash_t stash, const void *obj, int32_t num);
149 
164 int32_t odp_stash_put_u32(odp_stash_t stash, const uint32_t val[], int32_t num);
165 
181 int32_t odp_stash_put_u32_batch(odp_stash_t stash, const uint32_t val[], int32_t num);
182 
197 int32_t odp_stash_put_u64(odp_stash_t stash, const uint64_t val[], int32_t num);
198 
214 int32_t odp_stash_put_u64_batch(odp_stash_t stash, const uint64_t val[], int32_t num);
215 
231 int32_t odp_stash_put_ptr(odp_stash_t stash, const uintptr_t ptr[], int32_t num);
232 
248 int32_t odp_stash_put_ptr_batch(odp_stash_t stash, const uintptr_t ptr[], int32_t num);
249 
266 int32_t odp_stash_get(odp_stash_t stash, void *obj, int32_t num);
267 
285 int32_t odp_stash_get_batch(odp_stash_t stash, void *obj, int32_t num);
286 
301 int32_t odp_stash_get_u32(odp_stash_t stash, uint32_t val[], int32_t num);
302 
318 int32_t odp_stash_get_u32_batch(odp_stash_t stash, uint32_t val[], int32_t num);
319 
334 int32_t odp_stash_get_u64(odp_stash_t stash, uint64_t val[], int32_t num);
335 
351 int32_t odp_stash_get_u64_batch(odp_stash_t stash, uint64_t val[], int32_t num);
352 
368 int32_t odp_stash_get_ptr(odp_stash_t stash, uintptr_t ptr[], int32_t num);
369 
385 int32_t odp_stash_get_ptr_batch(odp_stash_t stash, uintptr_t ptr[], int32_t num);
386 
405 
415 
429 
434 #ifdef __cplusplus
435 }
436 #endif
437 
438 #include <odp/visibility_end.h>
439 #endif
ODP stash.
int odp_stash_flush_cache(odp_stash_t stash)
Flush object handles from the thread local cache.
int32_t odp_stash_put_u32_batch(odp_stash_t stash, const uint32_t val[], int32_t num)
Put batch of 32-bit integers into a stash.
odp_stash_type_t
Stash types.
int32_t odp_stash_put_batch(odp_stash_t stash, const void *obj, int32_t num)
Put batch of object handles into a stash.
int32_t odp_stash_get_u32_batch(odp_stash_t stash, uint32_t val[], int32_t num)
Get batch of 32-bit integers from a stash.
int32_t odp_stash_put_u64(odp_stash_t stash, const uint64_t val[], int32_t num)
Put 64-bit integers into a stash.
int odp_stash_stats(odp_stash_t stash, odp_stash_stats_t *stats)
Read statistics counters of a stash.
int32_t odp_stash_get_u64(odp_stash_t stash, uint64_t val[], int32_t num)
Get 64-bit integers from a stash.
int32_t odp_stash_get_batch(odp_stash_t stash, void *obj, int32_t num)
Get batch of object handles from a stash.
int32_t odp_stash_put(odp_stash_t stash, const void *obj, int32_t num)
Put object handles into a stash.
odp_stash_t odp_stash_lookup(const char *name)
Find a stash by name.
int32_t odp_stash_get_ptr(odp_stash_t stash, uintptr_t ptr[], int32_t num)
Get pointers from a stash.
void odp_stash_param_init(odp_stash_param_t *param)
Initialize stash params.
int32_t odp_stash_get(odp_stash_t stash, void *obj, int32_t num)
Get object handles from a stash.
int32_t odp_stash_get_ptr_batch(odp_stash_t stash, uintptr_t ptr[], int32_t num)
Get batch of pointers from a stash.
int32_t odp_stash_put_ptr_batch(odp_stash_t stash, const uintptr_t ptr[], int32_t num)
Put batch of pointers into a stash.
int odp_stash_destroy(odp_stash_t stash)
Destroy a stash.
int32_t odp_stash_get_u64_batch(odp_stash_t stash, uint64_t val[], int32_t num)
Get batch of 64-bit integers from a stash.
int32_t odp_stash_put_u32(odp_stash_t stash, const uint32_t val[], int32_t num)
Put 32-bit integers into a stash.
int odp_stash_capability(odp_stash_capability_t *capa, odp_stash_type_t type)
Query stash capabilities.
uint64_t odp_stash_to_u64(odp_stash_t stash)
Get printable value for a stash handle.
int32_t odp_stash_get_u32(odp_stash_t stash, uint32_t val[], int32_t num)
Get 32-bit integers from a stash.
void odp_stash_print(odp_stash_t stash)
Print debug information about the stash.
int32_t odp_stash_put_u64_batch(odp_stash_t stash, const uint64_t val[], int32_t num)
Put batch of 64-bit integers into a stash.
int32_t odp_stash_put_ptr(odp_stash_t stash, const uintptr_t ptr[], int32_t num)
Put pointers into a stash.
odp_stash_t odp_stash_create(const char *name, const odp_stash_param_t *param)
Create a stash.
Stash capabilities (per stash type)
Stash parameters.
Stash statistics counters.