NVMLib  very early alpha
A library to optimally use a Hybrid RAM setup.
metadata.h
Go to the documentation of this file.
1 #ifndef __NVM_METADATA_H__
2 #define __NVM_METADATA_H__
3 
4 #include "globals.h"
5 #include <libpmemobj.h>
6 
9 POBJ_LAYOUT_TOID(init, struct metadata);
11 
12 typedef struct metadata {
13  int num_pools;
16 
17 typedef struct metadata_root {
20 
21 void initialize_metadata();
22 
23 void update_num_pools(int numpools);
24 
25 int retrieve_num_pools();
26 
27 
28 #endif // !__NVM_METADATA_H__
POBJ_LAYOUT_END
POBJ_LAYOUT_END(init)
metadata
Definition: metadata.h:12
POBJ_LAYOUT_BEGIN
POBJ_LAYOUT_BEGIN(init)
initialize_metadata
void initialize_metadata()
Definition: metadata.c:6
retrieve_num_pools
int retrieve_num_pools()
Definition: metadata.c:51
metadata_root::init_metadata
metadata init_metadata
Definition: metadata.h:18
globals.h
metadata_root
Definition: metadata.h:17
uint64_t
__uint64_t uint64_t
Definition: globals.h:51
POBJ_LAYOUT_TOID
POBJ_LAYOUT_TOID(init, struct metadata)
update_num_pools
void update_num_pools(int numpools)
Definition: metadata.c:34
POBJ_LAYOUT_ROOT
POBJ_LAYOUT_ROOT(types_tab, struct hashmap_tx)
metadata::inst_num
uint64_t inst_num
Definition: metadata.h:14
metadata_root
struct metadata_root metadata_root
metadata
struct metadata metadata
metadata::num_pools
int num_pools
Definition: metadata.h:13