eyedbsm::Idx Class Reference

Inheritance diagram for eyedbsm::Idx:

eyedbsm::BIdx eyedbsm::HIdx

List of all members.

Public Types

enum  Type {
  tChar, tUnsignedChar, tSignedChar, tInt16,
  tUnsignedInt16, tInt32, tUnsignedInt32, tInt64,
  tUnsignedInt64, tFloat32, tFloat64, tString,
  tOid
}
enum  IdxType { HashType = 0x2311, BTreeType = 0xa765 }
typedef eyedbsm::Status(* hash_key_t )(const void *, unsigned int, void *, unsigned int &)

Public Member Functions

 Idx (eyedbsm::Boolean opened, eyedbsm::Boolean(*precmp)(void const *p, void const *q, KeyType const *type, int &r)=0)
 Not yet documented.
eyedbsm::Boolean isOpened () const
 Not yet documented.
virtual eyedbsm::Status destroy ()=0
 Not yet documented.
virtual eyedbsm::Oid
const & 
oid () const =0
 Not yet documented.
virtual eyedbsm::Status status () const =0
 Not yet documented.
virtual BIdxasBIdx ()
 Not yet documented.
virtual HIdxasHIdx ()
 Not yet documented.
virtual eyedbsm::Status reimplementToHash (eyedbsm::Oid &newoid, int key_count, int mag_order=0, short dspid=eyedbsm::DefaultDspid, const int *impl_hints=0, unsigned int impl_hints_cnt=0, hash_key_t hash_key=0, void *hash_data=0, KeyType *ktype=0)=0
 Not yet documented.
virtual eyedbsm::Status reimplementToBTree (eyedbsm::Oid &newoid, int degree=0, short dspid=eyedbsm::DefaultDspid)=0
 Not yet documented.
virtual unsigned int computeCount ()
 Not yet documented.
virtual unsigned int getCount () const =0
 Not yet documented.
virtual short getDefaultDspid () const =0
 Not yet documented.
virtual void setDefaultDspid (short dspid)=0
 Not yet documented.
virtual eyedbsm::Status getObjects (eyedbsm::Oid *&oids, unsigned int &cnt) const =0
 Not yet documented.
virtual ~Idx ()
int compare (void const *p, void const *q, KeyType const *type, unsigned char bswap) const

Static Public Member Functions

static eyedbsm::Status make (eyedbsm::DbHandle *dbh, const eyedbsm::Oid &oid, Idx *&idx)
 Not yet documented.
static size_t typeSize (Type type)
static const char * typeString (Type type)
static void h2x (void *xkey, const void *hkey, const KeyType &keyType)
static void x2h (void *hkey, const void *xkey, const KeyType &keyType, unsigned int size)

Protected Member Functions

eyedbsm::Status checkOpened () const

Protected Attributes

eyedbsm::Boolean opened

Classes

class  Key
struct  KeyType


Detailed Description

Definition at line 35 of file Idx.h.


Member Enumeration Documentation

enum eyedbsm::Idx::Type

Enumerator:
tChar 
tUnsignedChar 
tSignedChar 
tInt16 
tUnsignedInt16 
tInt32 
tUnsignedInt32 
tInt64 
tUnsignedInt64 
tFloat32 
tFloat64 
tString 
tOid 

Definition at line 39 of file Idx.h.

enum eyedbsm::Idx::IdxType

Enumerator:
HashType 
BTreeType 

Definition at line 56 of file Idx.h.


Constructor & Destructor Documentation

eyedbsm::Idx::Idx ( eyedbsm::Boolean  opened,
eyedbsm::Boolean(*)(void const *p, void const *q, KeyType const *type, int &r)  precmp = 0 
)

Not yet documented.

Parameters:
opened 
precmp 

Definition at line 45 of file Idx.cc.


Member Function Documentation

Status eyedbsm::Idx::make ( eyedbsm::DbHandle dbh,
const eyedbsm::Oid oid,
Idx *&  idx 
) [static]

Not yet documented.

Parameters:
dbh 
oid 
idx 
Returns:

Definition at line 54 of file Idx.cc.

eyedbsm::Boolean eyedbsm::Idx::isOpened (  )  const [inline]

Not yet documented.

Returns:

Definition at line 109 of file Idx.h.

virtual eyedbsm::Status eyedbsm::Idx::destroy (  )  [pure virtual]

Not yet documented.

Returns:

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.

virtual eyedbsm::Oid const& eyedbsm::Idx::oid (  )  const [pure virtual]

Not yet documented.

Returns:

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.

virtual eyedbsm::Status eyedbsm::Idx::status (  )  const [pure virtual]

Not yet documented.

Returns:

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.

virtual BIdx* eyedbsm::Idx::asBIdx (  )  [inline, virtual]

Not yet documented.

Returns:

Reimplemented in eyedbsm::BIdx.

Definition at line 145 of file Idx.h.

virtual HIdx* eyedbsm::Idx::asHIdx (  )  [inline, virtual]

Not yet documented.

Returns:

Reimplemented in eyedbsm::HIdx.

Definition at line 151 of file Idx.h.

virtual eyedbsm::Status eyedbsm::Idx::reimplementToHash ( eyedbsm::Oid newoid,
int  key_count,
int  mag_order = 0,
short  dspid = eyedbsm::DefaultDspid,
const int *  impl_hints = 0,
unsigned int  impl_hints_cnt = 0,
hash_key_t  hash_key = 0,
void *  hash_data = 0,
KeyType ktype = 0 
) [pure virtual]

Not yet documented.

Parameters:
newoid 
key_count 
mag_order 
dspid 
impl_hints 
impl_hints_cnt 
hash_key 
hash_data 
ktype 
Returns:

virtual eyedbsm::Status eyedbsm::Idx::reimplementToBTree ( eyedbsm::Oid newoid,
int  degree = 0,
short  dspid = eyedbsm::DefaultDspid 
) [pure virtual]

Not yet documented.

Parameters:
newoid 
degree 
dspid 
Returns:

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.

unsigned int eyedbsm::Idx::computeCount (  )  [virtual]

Not yet documented.

Returns:

Definition at line 121 of file Idx.cc.

virtual unsigned int eyedbsm::Idx::getCount (  )  const [pure virtual]

Not yet documented.

Returns:

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.

virtual short eyedbsm::Idx::getDefaultDspid (  )  const [pure virtual]

Not yet documented.

Returns:

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.

virtual void eyedbsm::Idx::setDefaultDspid ( short  dspid  )  [pure virtual]

Not yet documented.

Parameters:
dspid 

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.

virtual eyedbsm::Status eyedbsm::Idx::getObjects ( eyedbsm::Oid *&  oids,
unsigned int &  cnt 
) const [pure virtual]

Not yet documented.

Parameters:
oids 
cnt 
Returns:

Implemented in eyedbsm::BIdx, and eyedbsm::HIdx.


The documentation for this class was generated from the following files:
Generated on Mon Dec 22 18:16:26 2008 for eyedb by  doxygen 1.5.3