~drizzle-trunk/drizzle/development

390.1.2 by Monty Taylor
Fixed copyright headers in drizzled/
1
/* -*- mode: c++; c-basic-offset: 2; indent-tabs-mode: nil; -*-
2
 *  vim:expandtab:shiftwidth=2:tabstop=2:smarttab:
3
 *
4
 *  Copyright (C) 2008 Sun Microsystems
5
 *
6
 *  This program is free software; you can redistribute it and/or modify
7
 *  it under the terms of the GNU General Public License as published by
8
 *  the Free Software Foundation; version 2 of the License.
9
 *
10
 *  This program is distributed in the hope that it will be useful,
11
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13
 *  GNU General Public License for more details.
14
 *
15
 *  You should have received a copy of the GNU General Public License
16
 *  along with this program; if not, write to the Free Software
17
 *  Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
18
 */
243.1.15 by Jay Pipes
Added new non-server, non-client common includes header, new show.h and connect.h headers
19
20
/**
21
 * @file
22
 *
23
 * Contains function declarations that deal with the SHOW commands.  These
24
 * will eventually go away, but for now we split these definitions out into
25
 * their own header file for easier maintenance
26
 */
1122.2.10 by Monty Taylor
Fixed all of the include guards.
27
#ifndef DRIZZLED_SHOW_H
28
#define DRIZZLED_SHOW_H
575.4.7 by Monty Taylor
More header cleanup.
29
1071.1.2 by Nathan Williams
Converted st_add_schema_table::files from List<LEX_STRING> to std::vector<LEX_STRING*>.
30
#include <vector>
31
1122.2.10 by Monty Taylor
Fixed all of the include guards.
32
#include "drizzled/sql_list.h"
33
#include "drizzled/lex_string.h"
34
#include "drizzled/sql_parse.h"
35
575.4.7 by Monty Taylor
More header cleanup.
36
/* Forward declarations */
37
class String;
38
class JOIN;
39
class Session;
40
struct st_ha_create_information;
41
typedef st_ha_create_information HA_CREATE_INFO;
42
struct TableList;
1130.1.1 by Monty Taylor
Merged in plugin-slot-reorg patches.
43
namespace drizzled
44
{
45
namespace plugin
46
{
1130.1.7 by Monty Taylor
Renamed plugin::InfoSchema to plugin::InfoSchemaTable as per Jay.
47
  class InfoSchemaTable;
1130.1.1 by Monty Taylor
Merged in plugin-slot-reorg patches.
48
}
49
}
50
1130.3.4 by Monty Taylor
Merged in tree-wide include guard fixes and some header cleanup.
51
class Table;
1122.2.13 by Monty Taylor
Header cleanup.
52
typedef class Item COND;
584.1.15 by Monty Taylor
The mega-patch from hell. Renamed sql_class to session (since that's what it is) and removed it and field and table from common_includes.
53
1122.2.13 by Monty Taylor
Header cleanup.
54
typedef struct st_mysql_show_var SHOW_VAR;
584.1.15 by Monty Taylor
The mega-patch from hell. Renamed sql_class to session (since that's what it is) and removed it and field and table from common_includes.
55
typedef struct system_status_var STATUS_VAR;
56
1081.2.8 by Padraig O'Sullivan
Extracted the SCHEMATA table into the I_S plugin.
57
typedef struct st_lookup_field_values
58
{
59
  LEX_STRING db_value, table_value;
60
  bool wild_db_value, wild_table_value;
61
} LOOKUP_FIELD_VALUES;
62
63
bool calc_lookup_values_from_cond(Session *session, COND *cond, TableList *table,
64
                                  LOOKUP_FIELD_VALUES *lookup_field_vals);
65
bool get_lookup_field_values(Session *session, COND *cond, TableList *tables,
66
                             LOOKUP_FIELD_VALUES *lookup_field_values);
1071.1.5 by Nathan Williams
Merged trunk, resolved conflicts.
67
int make_db_list(Session *session, std::vector<LEX_STRING*> &files,
68
                 LOOKUP_FIELD_VALUES *lookup_field_vals, bool *with_i_schema);
1088.1.1 by Padraig O'Sullivan
Extracted the 3 STATUS tables into the I_S plugin.
69
SHOW_VAR *getFrontOfStatusVars();
575.4.7 by Monty Taylor
More header cleanup.
70
1014.3.4 by Brian Aker
Remove dead session calls.
71
int store_create_info(TableList *table_list, String *packet, HA_CREATE_INFO  *create_info_arg);
1089.10.1 by Stewart Smith
fix SHOW CREATE DATABASE for default collation. Move database metadata reading code around to be a bit more sane.
72
575.4.7 by Monty Taylor
More header cleanup.
73
bool schema_table_store_record(Session *session, Table *table);
74
1014.3.4 by Brian Aker
Remove dead session calls.
75
int get_quote_char_for_identifier();
1067.3.1 by Padraig O'Sullivan
Extracted the CHARACTER_SET I_S table into the I_S plugin.
76
int wild_case_compare(const CHARSET_INFO * const cs, 
77
                      const char *str,const char *wildstr);
575.4.7 by Monty Taylor
More header cleanup.
78
1034.1.4 by Brian Aker
Fixed TableList to correctly construct (and removed memset() calls in
79
bool make_schema_select(Session *session,  Select_Lex *sel,
1079.2.9 by Padraig O'Sullivan
Removed the dependency on knowing the position of an I_S table in the
80
                        const std::string& schema_table_name);
1034.1.4 by Brian Aker
Fixed TableList to correctly construct (and removed memset() calls in
81
bool mysql_schema_table(Session *session, LEX *lex, TableList *table_list);
82
bool get_schema_tables_result(JOIN *join, enum enum_schema_table_state executed_place);
575.4.7 by Monty Taylor
More header cleanup.
83
520.1.22 by Brian Aker
Second pass of thd cleanup
84
bool mysqld_show_open_tables(Session *session,const char *wild);
85
bool mysqld_show_logs(Session *session);
86
void mysqld_list_fields(Session *session,TableList *table, const char *wild);
87
int mysqld_dump_create_info(Session *session, TableList *table_list, int fd);
884.2.1 by Toru Maesaka
Fixed the bug of SHOW CREATE TABLE not outputting DEFAULT values. Killed some tabular indents on the way too
88
bool drizzled_show_create(Session *session, TableList *table_list);
1089.10.1 by Stewart Smith
fix SHOW CREATE DATABASE for default collation. Move database metadata reading code around to be a bit more sane.
89
bool mysqld_show_create_db(Session *session, char *dbname, bool if_not_exists);
243.1.15 by Jay Pipes
Added new non-server, non-client common includes header, new show.h and connect.h headers
90
520.1.22 by Brian Aker
Second pass of thd cleanup
91
int mysqld_show_status(Session *session);
92
int mysqld_show_variables(Session *session,const char *wild);
93
bool mysqld_show_storage_engines(Session *session);
94
bool mysqld_show_column_types(Session *session);
575.4.7 by Monty Taylor
More header cleanup.
95
void mysqld_list_processes(Session *session,const char *user, bool verbose);
243.1.15 by Jay Pipes
Added new non-server, non-client common includes header, new show.h and connect.h headers
96
void calc_sum_of_all_status(STATUS_VAR *to);
97
98
int add_status_vars(SHOW_VAR *list);
99
void remove_status_vars(SHOW_VAR *list);
100
void init_status_vars();
101
void free_status_vars();
102
void reset_status_vars();
103
1122.2.10 by Monty Taylor
Fixed all of the include guards.
104
#endif /* DRIZZLED_SHOW_H */