xbNtx Class Reference

xbNtx class More...

#include <xbntx.h>

Inheritance diagram for xbNtx:
xbIndex xbFile

List of all members.

Public Member Functions

 xbNtx ()
 Constructor.
 xbNtx (xbDbf *)
 Constructor.
virtual ~xbNtx ()
 Destructor.
void DumpHdrNode (xbShort Option)
 Short description.
void DumpNodeRec (xbLong)
 Short description.
xbShort CreateIndex (const char *, const char *, xbShort, xbShort)
 Short description.
xbLong GetTotalNodes ()
 Short description.
xbULong GetCurDbfRec ()
void DumpNodeChain ()
 Short description.
xbShort CreateKey (xbShort, xbShort)
 Short description.
xbShort GetCurrentKey (char *key)
 Short description.
xbShort AddKey (xbLong)
 Short description.
xbShort UniqueIndex ()
xbShort DeleteKey (xbLong DbfRec)
 Short description.
xbShort KeyWasChanged ()
 Short description.
xbShort FindKey (const char *)
 Short description.
xbShort FindKey ()
 Short description.
xbShort FindKey (xbDouble)
 Short description.
xbShort GetNextKey ()
xbShort GetLastKey ()
xbShort GetFirstKey ()
xbShort GetPrevKey ()
xbShort ReIndex (void(*statusFunc)(xbLong itemNum, xbLong numItems)=0)
 Short description.
xbShort KeyExists (char *Key)
xbShort KeyExists (xbDouble)
 Short description.
virtual void GetExpression (char *buf, int len)
 Short description.
xbShort CheckIndexIntegrity (xbShort Option)
 Short description.
virtual const char * GetExtWithDot (bool lower)

Protected Member Functions

xbLong GetLeftNodeNo (xbShort, xbNodeLink *)
 Short description.
xbShort CompareKey (const char *, const char *, xbShort)
 Short description.
xbShort CompareKey (const char *, const char *)
 Short description.
xbLong GetDbfNo (xbShort, xbNodeLink *)
 Short description.
char * GetKeyData (xbShort, xbNodeLink *)
 Short description.
xbUShort GetItemOffset (xbShort, xbNodeLink *, xbShort)
 Short description.
xbUShort InsertKeyOffset (xbShort, xbNodeLink *)
 Short description.
xbUShort GetKeysPerNode ()
 Short description.
virtual xbShort GetHeadNode ()
 Short description.
xbShort GetLeafNode (xbLong, xbShort)
 Short description.
xbNodeLink * GetNodeMemory ()
 Short description.
xbLong GetNextNodeNo ()
 Short description.
void ReleaseNodeMemory (xbNodeLink *n, xbBool doFree=false)
 Short description.
xbULong GetLeafFromInteriorNode (const char *, xbShort)
 Short description.
xbShort CalcKeyLen ()
 Short description.
xbShort PutKeyData (xbShort, xbNodeLink *)
 Short description.
xbShort PutLeftNodeNo (xbShort, xbNodeLink *, xbLong)
 Short description.
xbShort PutLeafNode (xbLong, xbNodeLink *)
 Short description.
xbShort PutHeadNode (NtxHeadNode *, FILE *, xbShort)
 Short description.
xbShort TouchIndex ()
xbShort PutDbfNo (xbShort, xbNodeLink *, xbLong)
 Short description.
xbShort PutKeyInNode (xbNodeLink *, xbShort, xbLong, xbLong, xbShort)
 Short description.
xbShort SplitLeafNode (xbNodeLink *, xbNodeLink *, xbShort, xbLong)
 Short description.
xbShort SplitINode (xbNodeLink *, xbNodeLink *, xbLong)
 Short description.
xbShort AddToIxList ()
xbShort RemoveFromIxList ()
xbShort RemoveKeyFromNode (xbShort, xbNodeLink *)
 Short description.
xbShort DeleteKeyFromNode (xbShort, xbNodeLink *)
 Short description.
xbShort JoinSiblings (xbNodeLink *, xbShort, xbNodeLink *, xbNodeLink *)
 Short description.
xbUShort DeleteKeyOffset (xbShort, xbNodeLink *)
 Short description.
xbShort FindKey (const char *, xbShort, xbShort)
 Short description.
xbShort UpdateParentKey (xbNodeLink *)
 Short description.
xbShort GetFirstKey (xbShort)
 Short description.
xbShort GetNextKey (xbShort)
 Short description.
xbShort GetLastKey (xbLong, xbShort)
 Short description.
xbShort GetPrevKey (xbShort)
 Short description.
void UpdateDeleteList (xbNodeLink *)
 Short description.
void ProcessDeleteList ()
 Short description.
xbShort FindKey (const char *, xbLong)
 Short description.
virtual xbUShort GetKeyLen ()
virtual const char * GetKeyExpression ()
virtual void FreeNodesMemory ()

Protected Attributes

NtxHeadNode HeadNode
NtxLeafNode LeafNode
xbLong NodeLinkCtr
xbLong ReusedNodeLinks
char Node [XB_NTX_NODE_SIZE]
xbNodeLink * NodeChain
xbNodeLink * FreeNodeChain
xbNodeLink * CurNode
xbNodeLink * DeleteChain
NtxItem PushItem

Detailed Description

xbNtx class


Constructor & Destructor Documentation

xbNtx::xbNtx (  ) 

Constructor.

xbNtx::xbNtx ( xbDbf *  pdbf  ) 

Constructor.

Parameters:
pdbf 
xbNtx::~xbNtx (  )  [virtual]

Destructor.


Member Function Documentation

xbShort xbNtx::AddKey ( xbLong  DbfRec  )  [virtual]

Short description.

Parameters:
DbfRec 

Implements xbIndex.

xbShort xbNtx::AddToIxList (  )  [protected]
xbShort xbNtx::CalcKeyLen ( void   )  [protected]

Short description.

xbShort xbNtx::CheckIndexIntegrity ( xbShort  Option  )  [virtual]

Short description.

Parameters:
option 

Implements xbIndex.

xbShort xbNtx::CompareKey ( const char *  Key1,
const char *  Key2 
) [protected]

Short description.

Parameters:
Key1 
Key2 
xbShort xbNtx::CompareKey ( const char *  Key1,
const char *  Key2,
xbShort  Klen 
) [protected]

Short description.

Parameters:
Key1 
Key2 
Klen 
xbShort xbNtx::CreateIndex ( const char *  IxName,
const char *  Exp,
xbShort  Unique,
xbShort  Overlay 
) [virtual]

Short description.

Parameters:
IxName 
Exp 
Unique 
Overlay 

Implements xbIndex.

xbShort xbNtx::CreateKey ( xbShort  RecBufSw,
xbShort  KeyBufSw 
) [virtual]

Short description.

Parameters:
RecBufSw 
KeyBufSw 

Implements xbIndex.

xbShort xbNtx::DeleteKey ( xbLong  DbfRec  )  [virtual]

Short description.

Parameters:
DbfRec 

Implements xbIndex.

xbShort xbNtx::DeleteKeyFromNode ( xbShort  pos,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
pos 
n 
xbUShort xbNtx::DeleteKeyOffset ( xbShort  pos,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
pos 
n 
void xbNtx::DumpHdrNode ( xbShort  Option  )  [virtual]

Short description.

Implements xbIndex.

void xbNtx::DumpNodeChain ( void   )  [virtual]

Short description.

Implements xbIndex.

void xbNtx::DumpNodeRec ( xbLong  n  )  [virtual]

Short description.

Parameters:
n 

Implements xbIndex.

xbShort xbNtx::FindKey ( xbDouble  d  )  [virtual]

Short description.

Parameters:
d 

Implements xbIndex.

xbShort xbNtx::FindKey ( void   )  [virtual]

Short description.

Implements xbIndex.

xbShort xbNtx::FindKey ( const char *  Key  )  [virtual]

Short description.

Parameters:
Key 

Implements xbIndex.

xbShort xbNtx::FindKey ( const char *  Tkey,
xbLong  DbfRec 
) [protected]

Short description.

Parameters:
Tkey 
DbfRec 
xbShort xbNtx::FindKey ( const char *  Tkey,
xbShort  Klen,
xbShort  RetrieveSw 
) [protected]

Short description.

Parameters:
Tkey 
Klen 
RetrieveSw 
void xbNtx::FreeNodesMemory (  )  [protected, virtual]

Implements xbIndex.

xbULong xbNtx::GetCurDbfRec (  )  [inline, virtual]

Implements xbIndex.

xbShort xbNtx::GetCurrentKey ( char *  key  )  [virtual]

Short description.

Parameters:
key 

Implements xbIndex.

xbLong xbNtx::GetDbfNo ( xbShort  RecNo,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
RecNo 
n 
void xbNtx::GetExpression ( char *  buf,
int  len 
) [virtual]

Short description.

Parameters:
buf 
len 

Implements xbIndex.

const char * xbNtx::GetExtWithDot ( bool  lower  )  [virtual]

Implements xbFile.

xbShort xbNtx::GetFirstKey (  )  [inline, virtual]

Implements xbIndex.

xbShort xbNtx::GetFirstKey ( xbShort  RetrieveSw  )  [protected]

Short description.

Parameters:
RetrieveSw 
xbShort xbNtx::GetHeadNode ( void   )  [protected, virtual]

Short description.

Implements xbIndex.

xbUShort xbNtx::GetItemOffset ( xbShort  RecNo,
xbNodeLink *  n,
xbShort   
) [protected]

Short description.

Parameters:
RecNo 
n 
 
char * xbNtx::GetKeyData ( xbShort  RecNo,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
RecNo 
n 
const char * xbNtx::GetKeyExpression (  )  [protected, virtual]

Implements xbIndex.

xbUShort xbNtx::GetKeyLen (  )  [protected, virtual]

Implements xbIndex.

xbUShort xbNtx::GetKeysPerNode ( void   )  [protected]

Short description.

xbShort xbNtx::GetLastKey (  )  [inline, virtual]

Implements xbIndex.

xbShort xbNtx::GetLastKey ( xbLong  NodeNo,
xbShort  RetrieveSw 
) [protected]

Short description.

Parameters:
NodeNo 
RetrieveSw 
xbULong xbNtx::GetLeafFromInteriorNode ( const char *  Tkey,
xbShort   
) [protected]

Short description.

Parameters:
Tkey 
 
xbShort xbNtx::GetLeafNode ( xbLong  NodeNo,
xbShort  SetNodeChain 
) [protected]

Short description.

Parameters:
NodeNo 
SetNodeChain 
xbLong xbNtx::GetLeftNodeNo ( xbShort  RecNo,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
RecNo 
n 
xbShort xbNtx::GetNextKey (  )  [inline, virtual]

Implements xbIndex.

xbShort xbNtx::GetNextKey ( xbShort  RetrieveSw  )  [protected]

Short description.

Parameters:
RetrieveSw 
xbLong xbNtx::GetNextNodeNo (  )  [protected]

Short description.

xbNodeLink * xbNtx::GetNodeMemory ( void   )  [protected]

Short description.

xbShort xbNtx::GetPrevKey (  )  [inline, virtual]

Implements xbIndex.

xbShort xbNtx::GetPrevKey ( xbShort  RetrieveSw  )  [protected]

Short description.

Parameters:
RetrieveSw 
xbLong xbNtx::GetTotalNodes ( void   )  [virtual]

Short description.

Implements xbIndex.

xbUShort xbNtx::InsertKeyOffset ( xbShort  pos,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
pos 
n 
xbShort xbNtx::JoinSiblings ( xbNodeLink *  parent,
xbShort  parentPos,
xbNodeLink *  n1,
xbNodeLink *  n2 
) [protected]

Short description.

Parameters:
parent 
parentPos 
n1 
n2 
xbShort xbNtx::KeyExists ( xbDouble  d  )  [virtual]

Short description.

Parameters:
d 

Implements xbIndex.

xbShort xbNtx::KeyExists ( char *  Key  )  [inline]
xbShort xbNtx::KeyWasChanged ( void   )  [virtual]

Short description.

Implements xbIndex.

void xbNtx::ProcessDeleteList ( void   )  [protected]

Short description.

xbShort xbNtx::PutDbfNo ( xbShort  RecNo,
xbNodeLink *  n,
xbLong  DbfNo 
) [protected]

Short description.

Parameters:
RecNo 
n 
DbfNo 
xbShort xbNtx::PutHeadNode ( NtxHeadNode *  Head,
FILE *  f,
xbShort  UpdateOnly 
) [protected]

Short description.

Parameters:
Head 
f 
UpdateOnly 
xbShort xbNtx::PutKeyData ( xbShort  RecNo,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
RecNo 
n 
xbShort xbNtx::PutKeyInNode ( xbNodeLink *  n,
xbShort  pos,
xbLong  d,
xbLong  l,
xbShort  w 
) [protected]

Short description.

Parameters:
n 
pos 
d 
l 
w 
xbShort xbNtx::PutLeafNode ( xbLong  l,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
l 
n 
xbShort xbNtx::PutLeftNodeNo ( xbShort  RecNo,
xbNodeLink *  n,
xbLong  NodeNo 
) [protected]

Short description.

Parameters:
RecNo 
n 
NodeNo 
xbShort xbNtx::ReIndex ( void(*)(xbLong itemNum, xbLong numItems)  statusFunc = 0  )  [virtual]

Short description.

Parameters:
statusFunc 

Implements xbIndex.

void xbNtx::ReleaseNodeMemory ( xbNodeLink *  n,
xbBool  doFree = false 
) [protected]

Short description.

Parameters:
n 
xbShort xbNtx::RemoveFromIxList (  )  [protected]
xbShort xbNtx::RemoveKeyFromNode ( xbShort  pos,
xbNodeLink *  n 
) [protected]

Short description.

Parameters:
pos 
n 
xbShort xbNtx::SplitINode ( xbNodeLink *  n1,
xbNodeLink *  n2,
xbLong   
) [protected]

Short description.

Parameters:
n1 
n2 
 
xbShort xbNtx::SplitLeafNode ( xbNodeLink *  n1,
xbNodeLink *  n2,
xbShort  pos,
xbLong  d 
) [protected]

Short description.

Parameters:
n1 
n2 
pos 
d 
xbShort xbNtx::TouchIndex ( void   )  [protected, virtual]

Reimplemented from xbIndex.

xbShort xbNtx::UniqueIndex (  )  [inline, virtual]

Implements xbIndex.

void xbNtx::UpdateDeleteList ( xbNodeLink *  n  )  [protected]

Short description.

Parameters:
n 
xbShort xbNtx::UpdateParentKey ( xbNodeLink *  n  )  [protected]

Short description.

Parameters:
n 

Member Data Documentation

xbNodeLink* xbNtx::CurNode [protected]
char xbNtx::Node[XB_NTX_NODE_SIZE] [protected]
NtxItem xbNtx::PushItem [protected]

The documentation for this class was generated from the following files:

Generated on 8 Jul 2010 for Xbase64 Class Library by  doxygen 1.6.1