~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/table.h

Merged build.

Show diffs side-by-side

added added

removed removed

Lines of Context:
36
36
#include "drizzled/atomics.h"
37
37
#include "drizzled/query_id.h"
38
38
 
 
39
namespace drizzled
 
40
{
 
41
 
39
42
class Item;
40
43
class Item_subselect;
41
44
class Select_Lex_Unit;
42
45
class Select_Lex;
43
46
class COND_EQUAL;
44
 
class Security_context;
 
47
class SecurityContext;
45
48
class TableList;
46
49
class Field_timestamp;
47
50
class Field_blob;
234
237
  uint32_t quick_key_parts[MAX_KEY];
235
238
  uint32_t quick_n_ranges[MAX_KEY];
236
239
 
237
 
  drizzled::memory::Root mem_root;
 
240
  memory::Root mem_root;
238
241
  filesort_info_st sort;
239
242
 
240
243
  Table();
271
274
    return s->storage_engine->index_flags(s->key_info[idx].algorithm);
272
275
  }
273
276
 
274
 
  inline drizzled::plugin::StorageEngine *getEngine() const     /* table_type for handler */
 
277
  inline plugin::StorageEngine *getEngine() const       /* table_type for handler */
275
278
  {
276
279
    return s->storage_engine;
277
280
  }
278
281
 
279
282
  /* For TMP tables, should be pulled out as a class */
280
 
  void updateCreateInfo(drizzled::message::Table *table_proto);
 
283
  void updateCreateInfo(message::Table *table_proto);
281
284
  void setup_tmp_table_column_bitmaps(unsigned char *bitmaps);
282
285
  bool create_myisam_tmp_table(KEY *keyinfo,
283
286
                               MI_COLUMNDEF *start_recinfo,
333
336
    read_set= read_set_arg;
334
337
    write_set= write_set_arg;
335
338
  }
336
 
  /**
337
 
   * Find field in table, no side effects, only purpose is to check for field
338
 
   * in table object and get reference to the field if found.
339
 
   *
340
 
   * @param Name of field searched for
341
 
   *
342
 
   * @retval
343
 
   *  0 field is not found
344
 
   * @retval
345
 
   *  non-0 pointer to field
346
 
   */
347
 
  Field *find_field_in_table_sef(const char *name);
348
339
 
349
340
  void restore_column_map(my_bitmap_map *old);
350
341
 
490
481
class select_union;
491
482
class Tmp_Table_Param;
492
483
 
493
 
typedef struct st_changed_table_list
494
 
{
495
 
  struct        st_changed_table_list *next;
496
 
  char          *key;
497
 
  uint32_t key_length;
498
 
} CHANGED_TableList;
499
 
 
500
484
struct open_table_list_st
501
485
{
502
486
  std::string   db;
526
510
int test_if_number(char *str,int *res,bool allow_wildcards);
527
511
void change_byte(unsigned char *,uint,char,char);
528
512
 
529
 
namespace drizzled { namespace optimizer { class SqlSelect; } }
 
513
namespace optimizer { class SqlSelect; }
530
514
 
531
515
ha_rows filesort(Session *session,
532
516
                 Table *form,
533
 
                 struct st_sort_field *sortorder,
534
 
                             uint32_t s_length,
535
 
                 drizzled::optimizer::SqlSelect *select,
536
 
                             ha_rows max_rows,
 
517
                 st_sort_field *sortorder,
 
518
                 uint32_t s_length,
 
519
                 optimizer::SqlSelect *select,
 
520
                 ha_rows max_rows,
537
521
                 bool sort_positions,
538
522
                 ha_rows *examined_rows);
539
523
 
541
525
void change_double_for_sort(double nr,unsigned char *to);
542
526
double my_double_round(double value, int64_t dec, bool dec_unsigned,
543
527
                       bool truncate);
544
 
int get_quick_record(drizzled::optimizer::SqlSelect *select);
 
528
int get_quick_record(optimizer::SqlSelect *select);
545
529
 
546
530
void find_date(char *pos,uint32_t *vek,uint32_t flag);
547
531
TYPELIB *convert_strings_to_array_type(char * *typelibs, char * *end);
548
 
TYPELIB *typelib(drizzled::memory::Root *mem_root, List<String> &strings);
 
532
TYPELIB *typelib(memory::Root *mem_root, List<String> &strings);
549
533
ulong get_form_pos(int file, unsigned char *head, TYPELIB *save_names);
550
534
ulong next_io_size(ulong pos);
551
535
void append_unescaped(String *res, const char *pos, uint32_t length);
555
539
bool check_db_name(LEX_STRING *org_name);
556
540
bool check_table_name(const char *name, uint32_t length);
557
541
 
 
542
} /* namespace drizzled */
 
543
 
558
544
#endif /* DRIZZLED_TABLE_H */