1 #ifndef __LOGREC_SUPPORT_H 2 #define __LOGREC_SUPPORT_H 18 template<
class PagePtr>
27 return 2 *
sizeof(size_t) + beginning_bytes + ending_bytes;
46 auto page =
reinterpret_cast<alloc_page*
>(p->get_generic_page());
51 auto page =
reinterpret_cast<stnode_page*
>(p->get_generic_page());
56 auto page =
reinterpret_cast<btree_page*
>(p->get_generic_page());
64 const char* pp_bin = (
const char*)p->get_generic_page();
65 beginning_bytes = unused - pp_bin;
66 ending_bytes =
sizeof(
generic_page) - (beginning_bytes + unused_length);
68 ::memcpy(
data, pp_bin, beginning_bytes);
69 ::memcpy(
data + beginning_bytes, unused + unused_length, ending_bytes);
77 char* pp_bin = (
char*)page->get_generic_page();
78 ::memcpy(pp_bin,
data, beginning_bytes);
80 data + beginning_bytes, ending_bytes);
84 #endif // __LOGREC_SUPPORT_H
#define w_assert1(x)
Level 1 should not add significant extra time.
Definition: w_base.h:198
size_t ending_bytes
Definition: logrec_support.h:22
page_img_format_t(const PagePtr p)
Definition: logrec_support.h:30
A generic page view: any Zero page can be viewed as being of this type but it only exposes fields sha...
Definition: generic_page.h:121
int size()
Definition: logrec_support.h:26
char * unused_part(size_t &length)
Definition: alloc_page.h:87
char * unused_part(size_t &length)
Definition: btree_page.cpp:477
Definition: logrec_support.h:19
size_t beginning_bytes
Definition: logrec_support.h:20
free-page allocation page
Definition: generic_page.h:88
btree page
Definition: generic_page.h:90
Free-page allocation/deallocation page.
Definition: alloc_page.h:28
char * unused_part(size_t &length)
Definition: stnode_page.h:100
char data[logrec_t::max_data_sz - 2 *sizeof(size_t)]
Definition: logrec_support.h:24
Store-node page that contains one stnode_t for each (possibly deleted or uncreated) store belonging t...
Definition: stnode_page.h:59
store node page
Definition: generic_page.h:89
void apply(PagePtr page)
Definition: logrec_support.h:74
B-tree page.
Definition: btree_page.h:518
#define W_FATAL(e)
Croak with the error code e.
Definition: w_rc.h:378