~thomir-deactivatedaccount/drizzle/drizzle-fix-bug653747

« back to all changes in this revision

Viewing changes to drizzled/table.h

  • Committer: Brian Aker
  • Date: 2010-10-10 02:07:52 UTC
  • mfrom: (1827.2.3 staging)
  • Revision ID: brian@tangent.org-20101010020752-ktv73isay5dxtvp3
Merge in switch on table_share_instance inheritance.

Show diffs side-by-side

added added

removed removed

Lines of Context:
372
372
  /* SHARE methods */
373
373
  virtual const TableShare *getShare() const { assert(_share); return _share; } /* Get rid of this long term */
374
374
  virtual TableShare *getMutableShare() { assert(_share); return _share; } /* Get rid of this long term */
375
 
  bool hasShare() const { return _share ? true : false ; } /* Get rid of this long term */
376
 
  virtual void setShare(TableShare *new_share) { _share= new_share; } /* Get rid of this long term */
377
 
  uint32_t sizeKeys() { return _share->sizeKeys(); }
378
 
  uint32_t sizeFields() { return _share->sizeFields(); }
379
 
  uint32_t getRecordLength() const { return _share->getRecordLength(); }
380
 
  uint32_t sizeBlobFields() { return _share->blob_fields; }
381
 
  uint32_t *getBlobField() { return &_share->blob_field[0]; }
382
 
 
383
 
public:
384
 
  virtual bool hasVariableWidth() const
385
 
  {
386
 
    return getShare()->hasVariableWidth(); // We should calculate this.
387
 
  }
388
 
 
389
 
  virtual void setVariableWidth(void);
 
375
  inline bool hasShare() const { return _share ? true : false ; } /* Get rid of this long term */
 
376
  inline void setShare(TableShare *new_share) { _share= new_share; } /* Get rid of this long term */
 
377
  inline uint32_t sizeKeys() { return _share->sizeKeys(); }
 
378
  inline uint32_t sizeFields() { return _share->sizeFields(); }
 
379
  inline uint32_t getRecordLength() const { return _share->getRecordLength(); }
 
380
  inline uint32_t sizeBlobFields() { return _share->blob_fields; }
 
381
  inline uint32_t *getBlobField() { return &_share->blob_field[0]; }
390
382
 
391
383
  Field_blob *getBlobFieldAt(uint32_t arg) const
392
384
  {
422
414
    return *cursor;
423
415
  }
424
416
 
 
417
  /* For TMP tables, should be pulled out as a class */
 
418
  void setup_tmp_table_column_bitmaps();
 
419
  bool create_myisam_tmp_table(KeyInfo *keyinfo,
 
420
                               MI_COLUMNDEF *start_recinfo,
 
421
                               MI_COLUMNDEF **recinfo,
 
422
                               uint64_t options);
 
423
  void free_tmp_table(Session *session);
 
424
  bool open_tmp_table();
425
425
  size_t max_row_length(const unsigned char *data);
426
426
  uint32_t find_shortest_key(const key_map *usable_keys);
427
427
  bool compare_record(Field **ptr);
629
629
    return output;  // for multiple << operators.
630
630
  }
631
631
 
 
632
protected:
 
633
  bool is_placeholder_created;
 
634
 
632
635
public:
633
 
  virtual bool isPlaceHolder(void) const
 
636
  bool isPlaceHolder()
634
637
  {
635
 
    return false;
 
638
    return is_placeholder_created;
636
639
  }
637
640
};
638
641
 
857
860
 
858
861
} /* namespace drizzled */
859
862
 
860
 
#include "drizzled/table/instance.h"
861
 
#include "drizzled/table/concurrent.h"
862
 
 
863
863
#endif /* DRIZZLED_TABLE_H */