| 1 | /* Copyright (c) 2007, 2013, Oracle and/or its affiliates. | 
| 2 |    Copyright (c) 2008, 2013, SkySQL Ab. | 
| 3 |  | 
| 4 |    This program is free software; you can redistribute it and/or modify | 
| 5 |    it under the terms of the GNU General Public License as published by | 
| 6 |    the Free Software Foundation; version 2 of the License. | 
| 7 |  | 
| 8 |    This program is distributed in the hope that it will be useful, | 
| 9 |    but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 10 |    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
| 11 |    GNU General Public License for more details. | 
| 12 |  | 
| 13 |    You should have received a copy of the GNU General Public License | 
| 14 |    along with this program; if not, write to the Free Software | 
| 15 |    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301  USA */ | 
| 16 |  | 
| 17 | #ifndef RPL_RECORD_H | 
| 18 | #define RPL_RECORD_H | 
| 19 |  | 
| 20 | #include <rpl_reporting.h> | 
| 21 |  | 
| 22 | struct rpl_group_info; | 
| 23 | struct TABLE; | 
| 24 | typedef struct st_bitmap MY_BITMAP; | 
| 25 |  | 
| 26 | #if !defined(MYSQL_CLIENT) | 
| 27 | size_t pack_row(TABLE* table, MY_BITMAP const* cols, | 
| 28 |                 uchar *row_data, const uchar *data); | 
| 29 | #endif | 
| 30 |  | 
| 31 | #if !defined(MYSQL_CLIENT) && defined(HAVE_REPLICATION) | 
| 32 | int unpack_row(rpl_group_info *rgi, | 
| 33 |                TABLE *table, uint const colcnt, | 
| 34 |                uchar const *const row_data, MY_BITMAP const *cols, | 
| 35 |                uchar const **const curr_row_end, ulong *const master_reclength, | 
| 36 |                uchar const *const row_end); | 
| 37 |  | 
| 38 | // Fill table's record[0] with default values. | 
| 39 | int prepare_record(TABLE *const table, const uint skip, const bool check); | 
| 40 | int fill_extra_persistent_columns(TABLE *table, int master_cols); | 
| 41 | #endif | 
| 42 |  | 
| 43 | #endif | 
| 44 |  |