1 #ifndef FIELD_COMP_H_INCLUDED 2 #define FIELD_COMP_H_INCLUDED 3 /* Copyright (C) 2017 MariaDB Foundation 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; version 2 of the License. 8 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with this program; if not, write to the Free Software 16 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ 17 18 19 #define MAX_COMPRESSION_METHODS 16 20 21 struct Compression_method 22 { 23 const char *name; 24 uint (*compress)(THD *thd, char *to, const char *from, uint length); 25 int (*uncompress)(String *to, const uchar *from, uint from_length, 26 uint field_length); 27 }; 28 29 30 extern Compression_method compression_methods[MAX_COMPRESSION_METHODS]; 31 #define zlib_compression_method (&compression_methods[8]) 32 33 #endif 34