~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/definition/table.h

  • Committer: Brian Aker
  • Date: 2010-10-28 17:12:01 UTC
  • mfrom: (1887.1.3 merge)
  • Revision ID: brian@tangent.org-20101028171201-baj6l1bnntn1s4ad
Merge in POTFILES changes.

Show diffs side-by-side

added added

removed removed

Lines of Context:
23
23
  instance of table share per one table in the database.
24
24
*/
25
25
 
26
 
#ifndef DRIZZLED_TABLE_SHARE_H
27
 
#define DRIZZLED_TABLE_SHARE_H
 
26
#ifndef DRIZZLED_DEFINITION_TABLE_H
 
27
#define DRIZZLED_DEFINITION_TABLE_H
28
28
 
29
29
#include <string>
30
30
 
38
38
#include "drizzled/message/table.pb.h"
39
39
#include "drizzled/util/string.h"
40
40
 
 
41
#include "drizzled/table/cache.h"
 
42
#include "drizzled/definition/cache.h"
 
43
 
41
44
namespace drizzled
42
45
{
43
46
 
45
48
 
46
49
typedef boost::shared_ptr<TableShare> TableSharePtr;
47
50
 
48
 
typedef boost::unordered_map< TableIdentifier::Key, TableSharePtr> TableDefinitionCache;
49
 
 
50
51
const static std::string STANDARD_STRING("STANDARD");
51
52
const static std::string TEMPORARY_STRING("TEMPORARY");
52
53
const static std::string INTERNAL_STRING("INTERNAL");
79
80
  /** Category of this table. */
80
81
  enum_table_category table_category;
81
82
 
82
 
  uint32_t open_count;                  /* Number of tables in open list */
83
83
public:
84
84
 
85
85
  bool isTemporaryCategory() const
237
237
  {
238
238
    mutex.unlock();
239
239
  }
240
 
public:
241
240
 
242
 
private:
243
241
  std::vector<unsigned char> default_values;            /* row with default values */
244
242
public:
245
243
  // @note This needs to be made to be const in the future
479
477
 
480
478
private:
481
479
  uint32_t ref_count;       /* How many Table objects uses this */
 
480
 
482
481
public:
483
482
  uint32_t getTableCount() const
484
483
  {
492
491
    unlock();
493
492
  }
494
493
 
 
494
  uint32_t decrementTableCount()
 
495
  {
 
496
    return --ref_count;
 
497
  }
 
498
 
495
499
  uint32_t null_bytes;
496
500
  uint32_t last_null_bit_pos;
497
501
  uint32_t fields;                              /* Number of fields */
637
641
 
638
642
  void open_table_error(int pass_error, int db_errno, int pass_errarg);
639
643
 
640
 
  static void cacheStart(void);
641
644
  static void release(TableShare *share);
642
645
  static void release(TableSharePtr &share);
643
646
  static void release(TableIdentifier &identifier);
644
 
  static const TableDefinitionCache &getCache();
645
647
  static TableSharePtr getShare(TableIdentifier &identifier);
646
648
  static TableSharePtr getShareCreate(Session *session, 
647
649
                                      TableIdentifier &identifier,
698
700
 
699
701
} /* namespace drizzled */
700
702
 
701
 
#endif /* DRIZZLED_TABLE_SHARE_H */
 
703
#endif /* DRIZZLED_DEFINITION_TABLE_H */