Drizzled Public API Documentation

buf0rea.h
Go to the documentation of this file.
00001 /*****************************************************************************
00002 
00003 Copyright (C) 1995, 2009, Innobase Oy. All Rights Reserved.
00004 
00005 This program is free software; you can redistribute it and/or modify it under
00006 the terms of the GNU General Public License as published by the Free Software
00007 Foundation; version 2 of the License.
00008 
00009 This program is distributed in the hope that it will be useful, but WITHOUT
00010 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00011 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
00012 
00013 You should have received a copy of the GNU General Public License along with
00014 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
00015 St, Fifth Floor, Boston, MA 02110-1301 USA
00016 
00017 *****************************************************************************/
00018 
00019 /**************************************************/
00026 #pragma once
00027 #ifndef buf0rea_h
00028 #define buf0rea_h
00029 
00030 #include "univ.i"
00031 #include "buf0types.h"
00032 
00033 /********************************************************************/
00039 UNIV_INTERN
00040 ibool
00041 buf_read_page(
00042 /*==========*/
00043   ulint space,  
00044   ulint zip_size,
00045   ulint offset);
00046 /********************************************************************/
00070 UNIV_INTERN
00071 ulint
00072 buf_read_ahead_linear(
00073 /*==================*/
00074   ulint space,  
00075   ulint zip_size,
00076   ulint offset);
00078 /********************************************************************/
00082 UNIV_INTERN
00083 void
00084 buf_read_ibuf_merge_pages(
00085 /*======================*/
00086   ibool   sync,   
00091   const ulint*  space_ids,  
00092   const ib_int64_t* space_versions,
00099   const ulint*  page_nos, 
00103   ulint   n_stored);  
00105 /********************************************************************/
00107 UNIV_INTERN
00108 void
00109 buf_read_recv_pages(
00110 /*================*/
00111   ibool   sync,   
00116   ulint   space,    
00117   ulint   zip_size, 
00119   const ulint*  page_nos, 
00123   ulint   n_stored);  
00128 #define BUF_READ_AHEAD_AREA(b)          \
00129   ut_min(64, ut_2_power_up((b)->curr_size / 32))
00130 
00133 #define BUF_READ_IBUF_PAGES_ONLY  131
00134 
00135 #define BUF_READ_ANY_PAGE   132
00136 /* @} */
00137 
00138 #endif