Drizzled Public API Documentation

sync0arr.h
Go to the documentation of this file.
1 /*****************************************************************************
2 
3 Copyright (C) 1995, 2009, Innobase Oy. All Rights Reserved.
4 
5 This program is free software; you can redistribute it and/or modify it under
6 the terms of the GNU General Public License as published by the Free Software
7 Foundation; version 2 of the License.
8 
9 This program is distributed in the hope that it will be useful, but WITHOUT
10 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
12 
13 You should have received a copy of the GNU General Public License along with
14 this program; if not, write to the Free Software Foundation, Inc., 51 Franklin
15 St, Fifth Floor, Boston, MA 02110-1301 USA
16 
17 *****************************************************************************/
18 
19 /**************************************************/
26 #pragma once
27 #ifndef sync0arr_h
28 #define sync0arr_h
29 
30 #include "univ.i"
31 #include "ut0lst.h"
32 #include "ut0mem.h"
33 #include "os0thread.h"
34 
39 
41 #define SYNC_ARRAY_OS_MUTEX 1
42 #define SYNC_ARRAY_MUTEX 2
43 /* @} */
44 
45 /*******************************************************************/
50 UNIV_INTERN
53 /*==============*/
54  ulint n_cells,
56  ulint protection);
59 /******************************************************************/
61 UNIV_INTERN
62 void
64 /*============*/
65  sync_array_t* arr);
66 /******************************************************************/
69 UNIV_INTERN
70 void
72 /*====================*/
73  sync_array_t* arr,
74  void* object,
75  ulint type,
76  const char* file,
77  ulint line,
78  ulint* index);
79 /******************************************************************/
84 UNIV_INTERN
85 void
87 /*==================*/
88  sync_array_t* arr,
89  ulint index);
90 /******************************************************************/
93 UNIV_INTERN
94 void
96 /*=================*/
97  sync_array_t* arr,
98  ulint index);
99 /**********************************************************************/
101 UNIV_INTERN
102 void
104 /*========================*/
105  sync_array_t* arr);
106 /**********************************************************************/
110 UNIV_INTERN
111 void
113 /*====================================*/
114 /**********************************************************************/
117 UNIV_INTERN
118 ibool
120 /*=============================*/
121 /********************************************************************/
124 UNIV_INTERN
125 void
127 /*================*/
128  sync_array_t* arr);
129 /**********************************************************************/
131 UNIV_INTERN
132 void
134 /*==================*/
135  FILE* file,
136  sync_array_t* arr);
139 #ifndef UNIV_NONINL
140 #include "sync0arr.ic"
141 #endif
142 
143 #endif