亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? backend.h

?? About: hamsterdb is a database engine written in ANSI C. It supports a B+Tree index structure, uses
?? H
字號:
/** * Copyright (C) 2005-2007 Christoph Rupp (chris@crupp.de). * All rights reserved. See file LICENSE for licence and copyright * information. * * a base-"class" for a backend * */#ifndef HAM_BACKEND_H__#define HAM_BACKEND_H__#ifdef __cplusplusextern "C" {#endif #include <ham/hamsterdb.h>#include <ham/hamsterdb_int.h>/** * a callback function for enumeration  */typedef void (*ham_enumerate_cb_t)(int event, void *param1, void *param2,         void *context);/** descend one level; param1 is an integer value with the new level */#define ENUM_EVENT_DESCEND      1/** start of a new page; param1 points to the page */#define ENUM_EVENT_PAGE_START   2/** end of a new page; param1 points to the page */#define ENUM_EVENT_PAGE_STOP    3/** an item in the page; param1 points to the key; param2 is the index  * of the key in the page */#define ENUM_EVENT_ITEM         4/** * the backend structure - these functions and members are "inherited" * by every other backend (i.e. btree, hashdb etc).  */#define BACKEND_DECLARATIONS(clss)                                      \    /**                                                                 \     * create and initialize a new backend                              \     *                                                                  \     * @remark this function is called after the ham_db_t structure     \      * and the file were created                                        \     *                                                                  \     * the @a flags are stored in the database; only transfer           \     * the persistent flags!                                            \     */                                                                 \    ham_status_t (*_fun_create)(clss *be, ham_u16_t keysize,            \            ham_u32_t flags);                                           \                                                                        \    /**                                                                 \     * open and initialize a backend                                    \     *                                                                  \     * @remark this function is called after the ham_db_structure       \     * was allocated and the file was opened                            \     */                                                                 \    ham_status_t (*_fun_open)(clss *be, ham_u32_t flags);               \                                                                        \    /**                                                                 \     * close the backend                                                \     *                                                                  \     * @remark this function is called before the file is closed        \     */                                                                 \    ham_status_t (*_fun_close)(clss *be);                               \                                                                        \    /**                                                                 \     * find a key in the index                                          \     */                                                                 \    ham_status_t (*_fun_find)(clss *be, ham_key_t *key,                 \            ham_record_t *record, ham_u32_t flags);                     \                                                                        \    /**                                                                 \     * insert (or update) a key in the index                            \     *                                                                  \     * the backend is responsible for inserting or updating the         \     * record. (see blob.h for blob management functions)               \     */                                                                 \    ham_status_t (*_fun_insert)(clss *be,                               \            ham_key_t *key, ham_record_t *record, ham_u32_t flags);     \                                                                        \    /**                                                                 \     * erase a key in the index                                         \     *                                                                  \     * @remark this function returns the record of the key              \     * in @a rid                                                        \     */                                                                 \    ham_status_t (*_fun_erase)(clss *be, ham_key_t *key,                \            ham_offset_t *rid, ham_u32_t *intflags, ham_u32_t flags);   \                                                                        \    /**                                                                 \     * iterate the whole tree and enumerate every item                  \      */                                                                 \    ham_status_t (*_fun_enumerate)(clss *be,                            \            ham_enumerate_cb_t cb, void *context);                      \                                                                        \    /**                                                                 \     * verify the whole tree                                            \     *                                                                  \     * @remark this function is available in DEBUG-mode only            \     */                                                                 \    ham_status_t (*_fun_check_integrity)(clss *be);                     \                                                                        \    /**                                                                 \     * free all allocated resources                                     \     *                                                                  \     * @remark this function is called after _fun_close()               \     */                                                                 \    void (*_fun_delete)(clss *be);                                      \                                                                        \    /**                                                                 \     * pointer to the database object                                   \     */                                                                 \    ham_db_t *_db;                                                      \                                                                        \    /**                                                                 \     * the keysize of this backend index                                \     */                                                                 \    ham_u16_t _keysize;                                                 \                                                                        \    /**                                                                 \     * the persistent flags of this backend index                       \     */                                                                 \    ham_u32_t _flags;/** * a generic backend structure, which has the same memory layout as  * all other backends * * @remark we're pre-declaring struct ham_backend_t and the typedef  * to avoid syntax errors in BACKEND_DECLARATIONS * * @remark since this structure is not persistent, we don't really * need packing; however, with Microsoft Visual C++ 8, the * offset of ham_backend_t::_flags (the last member) is not the same * as the offset of ham_btree_t::_flags, unless packing is enabled. */struct ham_backend_t;typedef struct ham_backend_t ham_backend_t;#include "packstart.h"HAM_PACK_0 struct HAM_PACK_1 ham_backend_t{    BACKEND_DECLARATIONS(ham_backend_t)} HAM_PACK_2;#include "packstop.h"/* * get the keysize */#define be_get_keysize(be)                  (be)->_keysize/* * set the keysize */#define be_set_keysize(be, ks)              (be)->_keysize=ks/* * get the flags */#define be_get_flags(be)                    (be)->_flags/* * set the flags */#define be_set_flags(be, f)                 (be)->_flags=f#ifdef __cplusplus} // extern "C"#endif #endif /* HAM_BACKEND_H__ */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色哟哟日韩精品| 欧美精品少妇一区二区三区| 色天使久久综合网天天| 5566中文字幕一区二区电影| 久久久久久久综合日本| 亚洲午夜久久久久中文字幕久| 精久久久久久久久久久| 欧美日韩一区 二区 三区 久久精品| 精品国产麻豆免费人成网站| 亚洲福利视频导航| 成人免费高清在线观看| 精品日韩在线观看| 婷婷开心久久网| 91亚洲精品久久久蜜桃| 国产欧美久久久精品影院| 日本不卡123| 欧美三级中文字| 亚洲一区免费在线观看| 91年精品国产| 中文字幕 久热精品 视频在线 | 在线看国产一区| 亚洲国产精品ⅴa在线观看| 精品在线观看视频| 欧美一级艳片视频免费观看| 亚洲一区二区三区精品在线| 91在线免费播放| 国产精品欧美久久久久一区二区| 粉嫩嫩av羞羞动漫久久久| 日韩三区在线观看| 日韩不卡在线观看日韩不卡视频| 欧美午夜理伦三级在线观看| 亚洲精品乱码久久久久久| 成人h版在线观看| 国产精品家庭影院| av电影在线观看完整版一区二区| 国产日韩综合av| 成人国产一区二区三区精品| 亚洲国产精品国自产拍av| 国产成人精品亚洲日本在线桃色 | 在线视频欧美区| 亚洲免费在线播放| 欧美亚州韩日在线看免费版国语版| 亚洲人成在线观看一区二区| 日本黄色一区二区| 无码av中文一区二区三区桃花岛| 欧美日本韩国一区二区三区视频| 香港成人在线视频| 欧美一区二区三区精品| 狠狠久久亚洲欧美| 中文字幕不卡在线观看| 91网站最新地址| 亚洲在线观看免费视频| 欧美一区二区三区视频| 国产一区二区美女| 中文字幕佐山爱一区二区免费| 色综合久久88色综合天天 | 日本免费新一区视频| 欧美一级黄色录像| 国产不卡视频在线观看| 一级精品视频在线观看宜春院| 欧美精品18+| 高清shemale亚洲人妖| 国产一区二区三区黄视频| 欧美激情一区在线观看| 欧洲一区二区三区免费视频| 麻豆成人综合网| 国产精品毛片a∨一区二区三区| 色婷婷av一区二区三区之一色屋| 日欧美一区二区| 亚洲国产精品成人综合| 欧美日韩1区2区| 成人精品电影在线观看| 亚洲电影视频在线| 国产午夜精品美女毛片视频| 在线看国产日韩| 国产乱一区二区| 亚洲va国产天堂va久久en| 国产午夜一区二区三区| 欧美男生操女生| 成人av在线影院| 免费观看在线色综合| 亚洲三级在线观看| 精品国产自在久精品国产| 日本久久精品电影| 国产乱色国产精品免费视频| 亚洲国产裸拍裸体视频在线观看乱了 | 欧美日韩一卡二卡| 99热在这里有精品免费| 卡一卡二国产精品 | 美女国产一区二区三区| 亚洲三级在线看| 亚洲国产精品成人综合色在线婷婷 | 日韩欧美电影一二三| 欧美中文字幕一区二区三区亚洲| 色妹子一区二区| 国产精品影音先锋| 蜜臀av国产精品久久久久| 亚洲综合清纯丝袜自拍| 中文在线一区二区| 久久久久久亚洲综合| 日韩欧美电影在线| 欧美高清性hdvideosex| 欧洲在线/亚洲| 99久久精品情趣| 成人精品小蝌蚪| 国产福利91精品| 国产馆精品极品| 国产一区二区看久久| 美女视频一区二区三区| 免费精品视频在线| 日本va欧美va欧美va精品| 亚洲一区二区中文在线| 洋洋成人永久网站入口| 亚洲欧美另类图片小说| 中文字幕中文字幕在线一区 | 91麻豆精品国产自产在线观看一区 | 国产不卡免费视频| 国产精品一区二区三区网站| 国产麻豆精品视频| 丁香亚洲综合激情啪啪综合| 国产精品1区二区.| 成人激情免费视频| 99精品国产一区二区三区不卡| 暴力调教一区二区三区| av电影在线不卡| 色先锋久久av资源部| 久久综合色天天久久综合图片| 日韩欧美激情四射| 久久婷婷成人综合色| 国产日韩视频一区二区三区| 国产精品久久久99| 一区二区日韩电影| 日本vs亚洲vs韩国一区三区二区 | 一区二区三区四区五区视频在线观看| 中文字幕日韩av资源站| 亚洲精品中文在线观看| 午夜伦理一区二区| 精品写真视频在线观看| 成人永久免费视频| 在线免费观看日本欧美| 欧美电视剧在线观看完整版| 国产性天天综合网| 亚洲国产中文字幕| 精品一区二区三区影院在线午夜| 国产91精品精华液一区二区三区 | 亚洲人吸女人奶水| 日韩电影在线一区| 高清国产一区二区| 欧美丝袜丝交足nylons| 精品少妇一区二区三区| 最新成人av在线| 午夜精品福利在线| 国产成人免费av在线| 欧美午夜理伦三级在线观看| 精品对白一区国产伦| 亚洲丝袜另类动漫二区| 日韩国产在线一| 成人国产一区二区三区精品| 欧美日本一道本在线视频| 国产人伦精品一区二区| 一区二区免费看| 国产精品1024| 91麻豆精品国产无毒不卡在线观看 | 日韩欧美中文一区二区| 国产精品夫妻自拍| 免费黄网站欧美| 日本电影欧美片| 国产欧美日韩在线看| 日韩二区三区四区| 色88888久久久久久影院按摩| xfplay精品久久| 午夜电影一区二区三区| 91免费版在线| 日本一区二区三区四区| 热久久免费视频| 欧美午夜理伦三级在线观看| 国产精品久久久爽爽爽麻豆色哟哟 | 成人av综合在线| 久久看人人爽人人| 蜜臀av一区二区在线观看| 欧美制服丝袜第一页| 一区二区中文字幕在线| 国产福利一区二区三区视频在线| 欧美一区二区三区四区视频| 亚洲激情男女视频| 99久久99久久精品免费看蜜桃| 26uuu精品一区二区三区四区在线| 香蕉成人啪国产精品视频综合网 | 欧美一二区视频| 日韩精品欧美成人高清一区二区| 91在线一区二区三区| 国产精品久久久久久福利一牛影视 | 麻豆精品在线观看| 在线播放亚洲一区| 无码av免费一区二区三区试看| 色狠狠一区二区三区香蕉| 亚洲视频一区在线| 91在线视频免费观看| 亚洲日本在线视频观看| proumb性欧美在线观看|