~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/filesort.h

  • Committer: Mark Atwood
  • Date: 2011-08-11 03:05:03 UTC
  • mfrom: (2385.1.12 refactor4)
  • Revision ID: me@mark.atwood.name-20110811030503-rp9xjihc5x3y0x4q
mergeĀ lp:~olafvdspek/drizzle/refactor4

Show diffs side-by-side

added added

removed removed

Lines of Context:
29
29
  This will replace Table_ident.
30
30
  */
31
31
 
32
 
#ifndef DRIZZLED_FILESORT_H
33
 
#define DRIZZLED_FILESORT_H
 
32
#pragma once
34
33
 
35
34
namespace drizzled {
36
35
 
37
 
class Session;
38
 
class Table;
39
 
class SortField;
40
 
 
41
 
namespace optimizer {
42
 
class SqlSelect;
43
 
}
44
 
 
45
 
class SortParam;
46
 
 
47
 
class FileSort {
 
36
class FileSort 
 
37
{
48
38
  Session &_session;
49
39
 
50
40
  uint32_t sortlength(SortField *sortorder, uint32_t s_length, bool *multi_byte_charset);
52
42
  ha_rows find_all_keys(SortParam *param, 
53
43
                        optimizer::SqlSelect *select,
54
44
                        unsigned char **sort_keys,
55
 
                        internal::IO_CACHE *buffpek_pointers,
56
 
                        internal::IO_CACHE *tempfile, internal::IO_CACHE *indexfile);
 
45
                        internal::io_cache_st *buffpek_pointers,
 
46
                        internal::io_cache_st *tempfile, internal::io_cache_st *indexfile);
57
47
 
58
 
  int merge_buffers(SortParam *param,internal::IO_CACHE *from_file,
59
 
                    internal::IO_CACHE *to_file, unsigned char *sort_buffer,
 
48
  int merge_buffers(SortParam *param,internal::io_cache_st *from_file,
 
49
                    internal::io_cache_st *to_file, unsigned char *sort_buffer,
60
50
                    buffpek *lastbuff,
61
51
                    buffpek *Fb,
62
52
                    buffpek *Tb,int flag);
65
55
                  unsigned char *sort_buffer,
66
56
                  buffpek *buffpek,
67
57
                  uint32_t maxbuffer,
68
 
                  internal::IO_CACHE *tempfile,
69
 
                  internal::IO_CACHE *outfile);
 
58
                  internal::io_cache_st *tempfile,
 
59
                  internal::io_cache_st *outfile);
70
60
 
71
61
  int merge_many_buff(SortParam *param, unsigned char *sort_buffer,
72
62
                      buffpek *buffpek,
73
 
                      uint32_t *maxbuffer, internal::IO_CACHE *t_file);
 
63
                      uint32_t *maxbuffer, internal::io_cache_st *t_file);
74
64
 
75
 
  uint32_t read_to_buffer(internal::IO_CACHE *fromfile, buffpek *buffpek,
 
65
  uint32_t read_to_buffer(internal::io_cache_st *fromfile, buffpek *buffpek,
76
66
                          uint32_t sort_length);
77
67
 
78
68
 
94
84
 
95
85
} /* namespace drizzled */
96
86
 
97
 
#endif /* DRIZZLED_FILESORT_H */