Xbase Class Library  2.0.0
Public Member Functions | Public Attributes | List of all members
xbNtx Class Reference

xbNtx class More...

#include <ntx.h>

Inheritance diagram for xbNtx:
xbIndex

Public Member Functions

xbLong GetLeftNodeNo (xbShort, xbNodeLink *)
 
xbShort CompareKey (const char *, const char *, xbShort)
 
xbShort CompareKey (const char *, const char *)
 
xbLong GetDbfNo (xbShort, xbNodeLink *)
 
char * GetKeyData (xbShort, xbNodeLink *)
 
xbUShort GetItemOffset (xbShort, xbNodeLink *, xbShort)
 
xbUShort InsertKeyOffset (xbShort, xbNodeLink *)
 
xbUShort GetKeysPerNode (void)
 
xbShort GetHeadNode (void)
 
xbShort GetLeafNode (xbLong, xbShort)
 
xbNodeLinkGetNodeMemory (void)
 
xbLong GetNextNodeNo (void)
 
void ReleaseNodeMemory (xbNodeLink *)
 
xbULong GetLeafFromInteriorNode (const char *, xbShort)
 
xbShort CalcKeyLen (void)
 
xbShort PutKeyData (xbShort, xbNodeLink *)
 
xbShort PutLeftNodeNo (xbShort, xbNodeLink *, xbLong)
 
xbShort PutLeafNode (xbLong, xbNodeLink *)
 
xbShort PutHeadNode (NtxHeadNode *, FILE *, xbShort)
 
xbShort TouchIndex (void)
 
xbShort PutDbfNo (xbShort, xbNodeLink *, xbLong)
 
xbShort PutKeyInNode (xbNodeLink *, xbShort, xbLong, xbLong, xbShort)
 
xbShort SplitLeafNode (xbNodeLink *, xbNodeLink *, xbShort, xbLong)
 
xbShort SplitINode (xbNodeLink *, xbNodeLink *, xbLong)
 
xbShort AddToIxList (void)
 
xbShort RemoveFromIxList (void)
 
xbShort RemoveKeyFromNode (xbShort, xbNodeLink *)
 
xbShort DeleteKeyFromNode (xbShort, xbNodeLink *)
 
xbShort JoinSiblings (xbNodeLink *, xbShort, xbNodeLink *, xbNodeLink *)
 
xbUShort DeleteKeyOffset (xbShort, xbNodeLink *)
 
xbShort FindKey (const char *, xbShort, xbShort)
 
xbShort UpdateParentKey (xbNodeLink *)
 
xbShort GetFirstKey (xbShort)
 
xbShort GetNextKey (xbShort)
 
xbShort GetLastKey (xbLong, xbShort)
 
xbShort GetPrevKey (xbShort)
 
void UpdateDeleteList (xbNodeLink *)
 
void ProcessDeleteList (void)
 
xbShort FindKey (const char *, xbLong)
 
xbShort CloneNodeChain (void)
 
xbShort UncloneNodeChain (void)
 
 xbNtx ()
 
 xbNtx (xbDbf *)
 
xbShort OpenIndex (const char *)
 
xbShort CloseIndex (void)
 
void DumpHdrNode (void)
 
void DumpNodeRec (xbLong)
 
xbShort CreateIndex (const char *, const char *, xbShort, xbShort)
 
xbLong GetTotalNodes (void)
 
xbLong GetCurDbfRec (void)
 
void DumpNodeChain (void)
 
xbShort CreateKey (xbShort, xbShort)
 
xbShort GetCurrentKey (char *key)
 
xbShort AddKey (xbLong)
 
xbShort UniqueIndex (void)
 
xbShort DeleteKey (xbLong DbfRec)
 
xbShort KeyWasChanged (void)
 
xbShort FindKey (const char *)
 
xbShort FindKey (void)
 
xbShort FindKey (xbDouble)
 
xbShort GetNextKey (void)
 
xbShort GetLastKey (void)
 
xbShort GetFirstKey (void)
 
xbShort GetPrevKey (void)
 
xbShort ReIndex (void(*statusFunc)(xbLong itemNum, xbLong numItems)=0)
 
xbShort KeyExists (char *Key)
 
xbShort KeyExists (xbDouble)
 
xbShort AllocKeyBufs (void)
 
virtual void GetExpression (char *buf, int len)
 
- Public Member Functions inherited from xbIndex
 xbIndex ()
 
 xbIndex (xbDbf *)
 
virtual ~xbIndex ()
 
virtual xbShort LockIndex (const xbShort, const xbShort) const
 
virtual void SetNodeSize (xbShort size)
 
virtual xbShort GetNodeSize (void)
 

Public Attributes

NtxHeadNode HeadNode
 
NtxLeafNode LeafNode
 
xbLong NodeLinkCtr
 
xbLong ReusedNodeLinks
 
char Node [XB_NTX_NODE_SIZE]
 
xbNodeLinkNodeChain
 
xbNodeLinkFreeNodeChain
 
xbNodeLinkCurNode
 
xbNodeLinkDeleteChain
 
xbNodeLinkCloneChain
 
NtxItem PushItem
 
- Public Attributes inherited from xbIndex
xbIndexindex
 
xbDbfdbf
 
xbExpNode * ExpressionTree
 
xbString IndexName
 
FILE * indexfp
 
int IndexStatus
 
xbLong CurDbfRec
 
char * KeyBuf
 
char * KeyBuf2
 
xbShort NodeSize
 

Detailed Description

xbNtx class

Constructor & Destructor Documentation

xbNtx::xbNtx ( )
inline
xbNtx::xbNtx ( xbDbf )

Member Function Documentation

xbShort xbNtx::AddKey ( xbLong  )
virtual

Implements xbIndex.

xbShort xbNtx::AddToIxList ( void  )
xbShort xbNtx::AllocKeyBufs ( void  )
xbShort xbNtx::CalcKeyLen ( void  )
xbShort xbNtx::CloneNodeChain ( void  )
xbShort xbNtx::CloseIndex ( void  )
virtual

Implements xbIndex.

xbShort xbNtx::CompareKey ( const char *  ,
const char *  ,
xbShort   
)
xbShort xbNtx::CompareKey ( const char *  ,
const char *   
)
xbShort xbNtx::CreateIndex ( const char *  ,
const char *  ,
xbShort  ,
xbShort   
)
virtual

Implements xbIndex.

xbShort xbNtx::CreateKey ( xbShort  ,
xbShort   
)
virtual

Implements xbIndex.

xbShort xbNtx::DeleteKey ( xbLong  DbfRec)
virtual

Implements xbIndex.

xbShort xbNtx::DeleteKeyFromNode ( xbShort  ,
xbNodeLink  
)
xbUShort xbNtx::DeleteKeyOffset ( xbShort  ,
xbNodeLink  
)
void xbNtx::DumpHdrNode ( void  )
void xbNtx::DumpNodeChain ( void  )
void xbNtx::DumpNodeRec ( xbLong  )
xbShort xbNtx::FindKey ( const char *  ,
xbShort  ,
xbShort   
)
xbShort xbNtx::FindKey ( const char *  ,
xbLong   
)
xbShort xbNtx::FindKey ( const char *  )
virtual

Implements xbIndex.

xbShort xbNtx::FindKey ( void  )
virtual

Implements xbIndex.

xbShort xbNtx::FindKey ( xbDouble  )
virtual

Implements xbIndex.

xbLong xbNtx::GetCurDbfRec ( void  )
inlinevirtual

Implements xbIndex.

xbShort xbNtx::GetCurrentKey ( char *  key)
virtual

Implements xbIndex.

xbLong xbNtx::GetDbfNo ( xbShort  ,
xbNodeLink  
)
virtual void xbNtx::GetExpression ( char *  buf,
int  len 
)
virtual

Implements xbIndex.

xbShort xbNtx::GetFirstKey ( xbShort  )
xbShort xbNtx::GetFirstKey ( void  )
inlinevirtual

Implements xbIndex.

xbShort xbNtx::GetHeadNode ( void  )
xbUShort xbNtx::GetItemOffset ( xbShort  ,
xbNodeLink ,
xbShort   
)
char* xbNtx::GetKeyData ( xbShort  ,
xbNodeLink  
)
xbUShort xbNtx::GetKeysPerNode ( void  )
xbShort xbNtx::GetLastKey ( xbLong  ,
xbShort   
)
xbShort xbNtx::GetLastKey ( void  )
inlinevirtual

Implements xbIndex.

xbULong xbNtx::GetLeafFromInteriorNode ( const char *  ,
xbShort   
)
xbShort xbNtx::GetLeafNode ( xbLong  ,
xbShort   
)
xbLong xbNtx::GetLeftNodeNo ( xbShort  ,
xbNodeLink  
)
xbShort xbNtx::GetNextKey ( xbShort  )
xbShort xbNtx::GetNextKey ( void  )
inlinevirtual

Implements xbIndex.

xbLong xbNtx::GetNextNodeNo ( void  )
xbNodeLink* xbNtx::GetNodeMemory ( void  )
xbShort xbNtx::GetPrevKey ( xbShort  )
xbShort xbNtx::GetPrevKey ( void  )
inlinevirtual

Implements xbIndex.

xbLong xbNtx::GetTotalNodes ( void  )
virtual

Implements xbIndex.

xbUShort xbNtx::InsertKeyOffset ( xbShort  ,
xbNodeLink  
)
xbShort xbNtx::JoinSiblings ( xbNodeLink ,
xbShort  ,
xbNodeLink ,
xbNodeLink  
)
xbShort xbNtx::KeyExists ( char *  Key)
inline
xbShort xbNtx::KeyExists ( xbDouble  )
virtual

Implements xbIndex.

xbShort xbNtx::KeyWasChanged ( void  )
virtual

Implements xbIndex.

xbShort xbNtx::OpenIndex ( const char *  )
virtual

Implements xbIndex.

void xbNtx::ProcessDeleteList ( void  )
xbShort xbNtx::PutDbfNo ( xbShort  ,
xbNodeLink ,
xbLong   
)
xbShort xbNtx::PutHeadNode ( NtxHeadNode ,
FILE *  ,
xbShort   
)
xbShort xbNtx::PutKeyData ( xbShort  ,
xbNodeLink  
)
xbShort xbNtx::PutKeyInNode ( xbNodeLink ,
xbShort  ,
xbLong  ,
xbLong  ,
xbShort   
)
xbShort xbNtx::PutLeafNode ( xbLong  ,
xbNodeLink  
)
xbShort xbNtx::PutLeftNodeNo ( xbShort  ,
xbNodeLink ,
xbLong   
)
xbShort xbNtx::ReIndex ( void(*)(xbLong itemNum, xbLong numItems)  statusFunc = 0)
virtual

Implements xbIndex.

void xbNtx::ReleaseNodeMemory ( xbNodeLink )
xbShort xbNtx::RemoveFromIxList ( void  )
xbShort xbNtx::RemoveKeyFromNode ( xbShort  ,
xbNodeLink  
)
xbShort xbNtx::SplitINode ( xbNodeLink ,
xbNodeLink ,
xbLong   
)
xbShort xbNtx::SplitLeafNode ( xbNodeLink ,
xbNodeLink ,
xbShort  ,
xbLong   
)
xbShort xbNtx::TouchIndex ( void  )
virtual

Reimplemented from xbIndex.

xbShort xbNtx::UncloneNodeChain ( void  )
xbShort xbNtx::UniqueIndex ( void  )
inlinevirtual

Implements xbIndex.

void xbNtx::UpdateDeleteList ( xbNodeLink )
xbShort xbNtx::UpdateParentKey ( xbNodeLink )

Member Data Documentation

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

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