![]() |
Statistics for MySQL
0.9
|
00001 /* sqlstat.h (Statistics for MySQL) */ 00002 00003 /*********************************************************************** 00004 * This code is part of Statistics for MySQL. 00005 * 00006 * Copyright (C) 2011 Heinrich Schuchardt (xypron.glpk@gmx.de) 00007 * 00008 * Licensed under the Apache License, Version 2.0 (the "License"); 00009 * you may not use this file except in compliance with the License. 00010 * You may obtain a copy of the License at 00011 * 00012 * http://www.apache.org/licenses/LICENSE-2.0 00013 * 00014 * Unless required by applicable law or agreed to in writing, software 00015 * distributed under the License is distributed on an "AS IS" BASIS, 00016 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00017 * See the License for the specific language governing permissions and 00018 * limitations under the License. 00019 ***********************************************************************/ 00020 00051 #ifndef SQLSTAT_H 00052 00053 #define SQLSTAT_H 1 00054 00055 #ifdef HAVE_CONF_H 00056 #include "config.h" 00057 #endif // HAVE_CONF_H 00058 00059 #if defined SQLWIN 00060 #include "windows.h" 00061 #endif //SQLWIN 00062 00063 #define MYSQL_DYNAMIC_PLUGIN 1 00064 00065 #include <mysql.h> 00066 #include <plugin.h> 00067 #include <malloc.h> 00068 #include <math.h> 00069 #include <string.h> 00070 00071 #ifndef NOT_FIXED_DEC 00072 00077 #define NOT_FIXED_DEC 31 00078 #endif // NOT_FIXED_DEC 00079 00080 #ifdef __cplusplus 00081 extern "C" 00082 { 00083 #endif 00084 00085 int sqlstat_plugin_init(void *p); 00086 int sqlstat_plugin_deinit(void *p); 00087 00088 int sqlstat_plugin_isloaded(); 00089 00090 my_bool avgw_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00091 void avgw_reset(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00092 void avgw_clear(UDF_INIT *initid, char *is_null, char *error); 00093 void avgw_add(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00094 double avgw(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00095 void avgw_deinit(UDF_INIT *initid); 00096 00097 my_bool corr_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00098 void corr_reset(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00099 void corr_clear(UDF_INIT *initid, char *is_null, char *error); 00100 void corr_add(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00101 double corr(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00102 void corr_deinit(UDF_INIT *initid); 00103 00104 my_bool median_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00105 void median_reset(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00106 void median_clear(UDF_INIT *initid, char *is_null, char *error); 00107 void median_add(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00108 double median(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00109 void median_deinit(UDF_INIT *initid); 00110 00111 my_bool rand_mt_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00112 double rand_mt(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00113 void rand_mt_deinit(UDF_INIT *initid); 00114 00115 my_bool rand_norm_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00116 double rand_norm(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00117 void rand_norm_deinit(UDF_INIT *initid); 00118 00119 my_bool rownumber_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00120 long long rownumber(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00121 void rownumber_deinit(UDF_INIT *initid); 00122 00123 my_bool skewness_pop_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00124 void skewness_pop_reset(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00125 void skewness_pop_clear(UDF_INIT *initid, char *is_null, char *error); 00126 void skewness_pop_add(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00127 double skewness_pop(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00128 void skewness_pop_deinit(UDF_INIT *initid); 00129 00130 my_bool skewness_samp_init(UDF_INIT *initid, UDF_ARGS *args, char *message); 00131 void skewness_samp_reset(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00132 void skewness_samp_clear(UDF_INIT *initid, char *is_null, char *error); 00133 void skewness_samp_add(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00134 double skewness_samp(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error); 00135 void skewness_samp_deinit(UDF_INIT *initid); 00136 00137 #ifdef __cplusplus 00138 } 00139 #endif 00140 00141 #endif // SQLSTAT_H 00142