~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/common_fwd.h

  • Committer: Olaf van der Spek
  • Date: 2011-10-10 09:27:50 UTC
  • mto: (2430.1.6 rf)
  • mto: This revision was merged to the branch mainline in revision 2436.
  • Revision ID: olafvdspek@gmail.com-20111010092750-ryxgmn7zj5yvxfkf
Refactor

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/* Drizzle
 
2
 * Copyright (C) 2011 Olaf van der Spek
 
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, either version 2 of the License, or
 
7
 * (at your option) any later version.
 
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, see <http://www.gnu.org/licenses/>.
 
16
 */
 
17
 
 
18
#pragma once
 
19
 
 
20
#include <boost/shared_ptr.hpp>
 
21
#include <boost/thread/condition_variable.hpp>
 
22
#include <boost/thread/mutex.hpp>
 
23
#include <cstring>
 
24
#include <drizzled/visibility.h>
 
25
#include <string>
 
26
#include <vector>
 
27
 
 
28
namespace drizzled {
 
29
 
 
30
namespace catalog
 
31
{
 
32
  class Instance;
 
33
 
 
34
  namespace lock 
 
35
  {
 
36
    class Create;
 
37
    class Erase;
 
38
  }
 
39
}
 
40
 
 
41
namespace field 
 
42
{
 
43
  class Epoch;
 
44
  class TableShare;
 
45
}
 
46
 
 
47
namespace generator 
 
48
{
 
49
  class TableDefinitionCache;
 
50
 
 
51
  namespace catalog 
 
52
  {
 
53
    class Cache;
 
54
    class Instance;
 
55
  }
 
56
}
 
57
 
 
58
namespace internal
 
59
{
 
60
  struct io_cache_st;
 
61
  struct st_my_thread_var;
 
62
}
 
63
 
 
64
namespace identifier
 
65
{
 
66
  class Catalog;
 
67
  class Schema;
 
68
  class Table;
 
69
  class User;
 
70
 
 
71
  typedef int64_t Session;
 
72
 
 
73
  namespace catalog
 
74
  {
 
75
    typedef std::vector<Catalog> vector;
 
76
  }
 
77
 
 
78
  namespace schema
 
79
  {
 
80
    typedef std::vector<Schema> vector;
 
81
  }
 
82
 
 
83
  namespace table
 
84
  {
 
85
    // typedef message::Table::TableType Type;
 
86
    typedef std::vector<Table> vector;
 
87
  }
 
88
 
 
89
  namespace user
 
90
  {
 
91
    typedef boost::shared_ptr<const User> ptr;
 
92
    typedef boost::shared_ptr<User> mptr;
 
93
  }
 
94
}
 
95
 
 
96
namespace item
 
97
{
 
98
  class Boolean;
 
99
  class False;
 
100
  class True;
 
101
}
 
102
 
 
103
namespace memory
 
104
{
 
105
  class Root;
 
106
}
 
107
 
 
108
namespace message
 
109
{
 
110
  class AlterSchemaStatement;
 
111
  class AlterTable;
 
112
  class CreateSchemaStatement;
 
113
  class CreateTableStatement;
 
114
  class DeleteData;
 
115
  class DeleteHeader;
 
116
  class DeleteRecord;
 
117
  class DropSchemaStatement;
 
118
  class DropTableStatement;
 
119
  class InsertData;
 
120
  class InsertHeader;
 
121
  class InsertRecord;
 
122
  class Resultset;
 
123
  class Schema;
 
124
  class SetVariableStatement;
 
125
  class Statement;
 
126
  class Table;
 
127
  class Transaction;
 
128
  class TruncateTableStatement;
 
129
  class UpdateData;
 
130
  class UpdateHeader;
 
131
  class UpdateRecord;
 
132
}
 
133
 
 
134
namespace module
 
135
{
 
136
  class Graph;
 
137
  class Library;
 
138
  class Manifest;
 
139
  class Module;
 
140
  class option_map;
 
141
  class Registry;
 
142
  class VertexHandle;
 
143
}
 
144
 
 
145
namespace plugin 
 
146
 
147
  class Catalog;
 
148
  class Client;
 
149
  class EventData;
 
150
  class EventObserver;
 
151
  class EventObserverList;
 
152
  class Function;
 
153
  class Listen;
 
154
  class MonitoredInTransaction;
 
155
  class NullClient;
 
156
  class Scheduler;
 
157
  class StorageEngine;
 
158
  class TransactionApplier;
 
159
  class TransactionReplicator;
 
160
  class TransactionalStorageEngine;
 
161
  class XaResourceManager;
 
162
  class XaStorageEngine;
 
163
}
 
164
 
 
165
namespace optimizer 
 
166
 
167
  class compare_functor;
 
168
  class CostVector; 
 
169
  class Parameter;
 
170
  class Position;
 
171
  class QuickRange;
 
172
  class QuickRangeSelect;
 
173
  class RangeParameter;
 
174
  class RorScanInfo;
 
175
  class SEL_ARG;
 
176
  class SEL_IMERGE;
 
177
  class SEL_TREE;
 
178
  class SqlSelect;
 
179
  struct st_qsel_param;
 
180
}
 
181
 
 
182
namespace session 
 
183
 
184
  class State; 
 
185
  class TableMessages;
 
186
  class Times;
 
187
  class Transactions;
 
188
}
 
189
 
 
190
namespace sql
 
191
{
 
192
  class ResultSet;
 
193
}
 
194
 
 
195
namespace statement 
 
196
 
197
  class Statement; 
 
198
}
 
199
 
 
200
namespace table 
 
201
 
202
  class Cache;
 
203
  class Concurrent;
 
204
  class Placeholder; 
 
205
  class Singular; 
 
206
 
 
207
  namespace instance
 
208
  {
 
209
    class Shared;
 
210
  }
 
211
}
 
212
 
 
213
namespace type 
 
214
 
215
  class Decimal;
 
216
  class Time; 
 
217
 
 
218
  typedef int64_t datetime_t;
 
219
  typedef int64_t date_t;
 
220
  typedef int64_t epoch_t;
 
221
  typedef uint32_t usec_t;
 
222
}
 
223
 
 
224
namespace util
 
225
{
 
226
  class Storable;
 
227
  struct insensitive_equal_to;
 
228
  struct insensitive_hash;
 
229
 
 
230
  namespace string
 
231
  {
 
232
    typedef boost::shared_ptr<const std::string> ptr;
 
233
    typedef boost::shared_ptr<std::string> mptr;
 
234
    typedef std::vector<std::string> vector;
 
235
  }
 
236
}
 
237
 
 
238
typedef struct my_locale_st MY_LOCALE;
 
239
typedef struct st_columndef MI_COLUMNDEF;
 
240
 
 
241
class AlterColumn;
 
242
class AlterDrop;
 
243
class AlterInfo;
 
244
class Arg_comparator;
 
245
class Cached_item;
 
246
class CachedDirectory;
 
247
class COND_EQUAL;
 
248
class CopyField;
 
249
class CopyInfo;
 
250
class Create_func;
 
251
class CreateField;
 
252
class Cursor;
 
253
class Date;
 
254
class DateTime;
 
255
class Diagnostics_area;
 
256
class DRIZZLE_ERROR;
 
257
class DrizzleLock;
 
258
class DrizzleXid;
 
259
class Field;
 
260
class Field_blob;
 
261
class file_exchange;
 
262
class ForeignKeyInfo;
 
263
class Hybrid_type;
 
264
class Hybrid_type_traits;
 
265
class Identifier;
 
266
class Index_hint;
 
267
class Internal_error_handler;
 
268
class Item;
 
269
class Item_bool_func2;
 
270
class Item_cache;
 
271
class Item_equal;
 
272
class Item_field;
 
273
class Item_func;
 
274
class Item_func_not_all;
 
275
class Item_func_set_user_var;
 
276
class Item_ident;
 
277
class Item_in_optimizer;
 
278
class Item_in_subselect;
 
279
class Item_maxmin_subselect;
 
280
class Item_outer_ref;
 
281
class Item_row;
 
282
class Item_subselect;
 
283
class Item_sum;
 
284
class Item_sum_avg;
 
285
class Item_sum_hybrid;
 
286
class Item_sum_std;
 
287
class Item_sum_variance;
 
288
class Join;
 
289
class JoinTable;
 
290
class KeyInfo;
 
291
class LEX;
 
292
class Lex_Column;
 
293
class Lex_input_stream;
 
294
class lex_string_t;
 
295
class Name_resolution_context;
 
296
class NamedSavepoint;
 
297
class Natural_join_column;
 
298
class ResourceContext;
 
299
class RorIntersectReadPlan; 
 
300
class SecurityContext;
 
301
class Select_Lex;
 
302
class Select_Lex_Unit;
 
303
class select_result;
 
304
class select_result_interceptor;
 
305
class select_union;
 
306
class SendField;
 
307
class Session;
 
308
class SortField;
 
309
class SortParam;
 
310
class StoredKey;
 
311
class st_lex_symbol;
 
312
class String;
 
313
class subselect_engine;
 
314
class subselect_hash_sj_engine;
 
315
class sys_var;
 
316
class sys_var_str;
 
317
class system_status_var;
 
318
class Table;
 
319
class Table_ident;
 
320
class TableList;
 
321
class TableShare;
 
322
class TableShareInstance;
 
323
class Temporal;
 
324
class TemporalInterval;
 
325
class TemporalIntervalDayOrLess;
 
326
class TemporalIntervalDayOrWeek;
 
327
class TemporalIntervalYear;
 
328
class TemporalIntervalYearMonth;
 
329
class Time;
 
330
class Time_zone;
 
331
class Timestamp;
 
332
class Tmp_Table_Param;
 
333
class TYPELIB;
 
334
class Unique;
 
335
class user_var_entry;
 
336
class var;
 
337
class XID;
 
338
 
 
339
struct CacheField;
 
340
struct Ha_data;
 
341
struct charset_info_st;
 
342
struct option;
 
343
struct Order;
 
344
 
 
345
typedef Item COND;
 
346
typedef uint64_t query_id_t;
 
347
typedef int64_t session_id_t;
 
348
typedef uint64_t my_xid;
 
349
 
 
350
} // namespace drizzled