ubi_BinTree.h File Reference

#include "sys_include.h"
#include "xsb_config.h"
#include "auxlry.h"
#include "cell_xsb.h"
#include "psc_xsb.h"

Data Structures

struct  ubi_btNodeStruct
struct  ubi_btRoot

Defines

#define ubi_trTRUE   0xFF
#define ubi_trFALSE   0x00
#define ubi_trOVERWRITE   0x01
#define ubi_trDUPKEY   0x02
#define ubi_trLEFT   0x00
#define ubi_trPARENT   0x01
#define ubi_trRIGHT   0x02
#define ubi_trEQUAL   ubi_trPARENT
#define ubi_trNormalize(W)   ((char)( (W) - ubi_trEQUAL ))
#define ubi_trAbNormal(W)
#define ubi_trRevWay(W)   ((char)( ubi_trEQUAL - ((W) - ubi_trEQUAL) ))
#define ubi_trDups_OK(A)   ((ubi_trDUPKEY & ((A)->flags))?(ubi_trTRUE):(ubi_trFALSE))
#define ubi_trOvwt_OK(A)   ((ubi_trOVERWRITE & ((A)->flags))?(ubi_trTRUE):(ubi_trFALSE))
#define ubi_trCount(R)   (((ubi_trRootPtr)(R))->count)
#define ubi_trNewTree(N, C, F)   ubi_trRoot (N)[1] = {{ NULL, (C), 0, (F) }}
#define ubi_trItemPtr   ubi_btItemPtr
#define ubi_trNode   ubi_btNode
#define ubi_trNodePtr   ubi_btNodePtr
#define ubi_trRoot   ubi_btRoot
#define ubi_trRootPtr   ubi_btRootPtr
#define ubi_trCompFunc   ubi_btCompFunc
#define ubi_trActionRtn   ubi_btActionRtn
#define ubi_trKillNodeRtn   ubi_btKillNodeRtn
#define ubi_trSgn(x)   ubi_btSgn( x )
#define ubi_trInitNode(Np)   ubi_btInitNode( (ubi_btNodePtr)(Np) )
#define ubi_trInitTree(Rp, Cf, Fl)   ubi_btInitTree( (ubi_btRootPtr)(Rp), (ubi_btCompFunc)(Cf), (Fl) )
#define ubi_trInsert(Rp, Nn, Ip, On)
#define ubi_trRemove(Rp, Dn)   ubi_btRemove( (ubi_btRootPtr)(Rp), (ubi_btNodePtr)(Dn) )
#define ubi_trLocate(Rp, Ip, Op)
#define ubi_trFind(Rp, Ip)   ubi_btFind( (ubi_btRootPtr)(Rp), (ubi_btItemPtr)(Ip) )
#define ubi_trNext(P)   ubi_btNext( (ubi_btNodePtr)(P) )
#define ubi_trPrev(P)   ubi_btPrev( (ubi_btNodePtr)(P) )
#define ubi_trFirst(P)   ubi_btFirst( (ubi_btNodePtr)(P) )
#define ubi_trLast(P)   ubi_btLast( (ubi_btNodePtr)(P) )
#define ubi_trFirstOf(Rp, Ip, P)
#define ubi_trLastOf(Rp, Ip, P)
#define ubi_trTraverse(Rp, En, Ud)   ubi_btTraverse((ubi_btRootPtr)(Rp), (ubi_btActionRtn)(En), (void *)(Ud))
#define ubi_trKillTree(Rp, Fn)   ubi_btKillTree( (ubi_btRootPtr)(Rp), (ubi_btKillNodeRtn)(Fn) )
#define ubi_trLeafNode(Nd)   ubi_btLeafNode( (ubi_btNodePtr)(Nd) )
#define ubi_trModuleID(s, l)   ubi_btModuleID( s, l )

Typedefs

typedef unsigned char ubi_trBool
typedef unsigned char ** ubi_btItemPtr
typedef ubi_btNodeStruct ubi_btNode
typedef ubi_btNodeubi_btNodePtr
typedef int(* ubi_btCompFunc )(ubi_btItemPtr, ubi_btNodePtr)
typedef void(* ubi_btActionRtn )(ubi_btNodePtr, void *)
typedef void(* ubi_btKillNodeRtn )(ubi_btNodePtr)
typedef ubi_btRootubi_btRootPtr

Enumerations

enum  ubi_trCompOps {
  ubi_trLT = 1, ubi_trLE, ubi_trEQ, ubi_trGE,
  ubi_trGT
}

Functions

long ubi_btSgn (long x)
ubi_btNodePtr ubi_btInitNode (ubi_btNodePtr uNodePtr)
ubi_btRootPtr ubi_btInitTree (ubi_btRootPtr RootPtr, ubi_btCompFunc CompFunc, char Flags)
ubi_trBool ubi_btInsert (ubi_btRootPtr RootPtr, ubi_btNodePtr NewNode, ubi_btItemPtr ItemPtr, ubi_btNodePtr *OldNode)
ubi_btNodePtr ubi_btRemove (ubi_btRootPtr RootPtr, ubi_btNodePtr DeadNode)
ubi_btNodePtr ubi_btLocate (ubi_btRootPtr RootPtr, ubi_btItemPtr FindMe, ubi_trCompOps CompOp)
ubi_btNodePtr ubi_btFind (ubi_btRootPtr RootPtr, ubi_btItemPtr FindMe)
ubi_btNodePtr ubi_btNext (ubi_btNodePtr Pr)
ubi_btNodePtr ubi_btPrev (ubi_btNodePtr Pr)
ubi_btNodePtr ubi_btFirst (ubi_btNodePtr Pr)
ubi_btNodePtr ubi_btLast (ubi_btNodePtr Pr)
ubi_btNodePtr ubi_btFirstOf (ubi_btRootPtr RootPtr, ubi_btItemPtr MatchMe, ubi_btNodePtr p)
ubi_btNodePtr ubi_btLastOf (ubi_btRootPtr RootPtr, ubi_btItemPtr MatchMe, ubi_btNodePtr p)
unsigned long ubi_btTraverse (ubi_btRootPtr RootPtr, ubi_btActionRtn EachNode, void *UserData)
unsigned long ubi_btKillTree (ubi_btRootPtr RootPtr, ubi_btKillNodeRtn FreeNode)
ubi_btNodePtr ubi_btLeafNode (ubi_btNodePtr leader)
int ubi_btModuleID (int size, char *list[])

Define Documentation

#define ubi_trAbNormal  ) 
 

Value:

((char)( ((char)ubi_btSgn( (long)(W) )) \
                                         + ubi_trEQUAL ))

#define ubi_trActionRtn   ubi_btActionRtn
 

#define ubi_trCompFunc   ubi_btCompFunc
 

#define ubi_trCount  )     (((ubi_trRootPtr)(R))->count)
 

#define ubi_trDUPKEY   0x02
 

#define ubi_trDups_OK  )     ((ubi_trDUPKEY & ((A)->flags))?(ubi_trTRUE):(ubi_trFALSE))
 

#define ubi_trEQUAL   ubi_trPARENT
 

#define ubi_trFALSE   0x00
 

#define ubi_trFind Rp,
Ip   )     ubi_btFind( (ubi_btRootPtr)(Rp), (ubi_btItemPtr)(Ip) )
 

#define ubi_trFirst  )     ubi_btFirst( (ubi_btNodePtr)(P) )
 

#define ubi_trFirstOf Rp,
Ip,
 ) 
 

Value:

#define ubi_trInitNode Np   )     ubi_btInitNode( (ubi_btNodePtr)(Np) )
 

#define ubi_trInitTree Rp,
Cf,
Fl   )     ubi_btInitTree( (ubi_btRootPtr)(Rp), (ubi_btCompFunc)(Cf), (Fl) )
 

#define ubi_trInsert Rp,
Nn,
Ip,
On   ) 
 

Value:

#define ubi_trItemPtr   ubi_btItemPtr
 

#define ubi_trKillNodeRtn   ubi_btKillNodeRtn
 

#define ubi_trKillTree Rp,
Fn   )     ubi_btKillTree( (ubi_btRootPtr)(Rp), (ubi_btKillNodeRtn)(Fn) )
 

#define ubi_trLast  )     ubi_btLast( (ubi_btNodePtr)(P) )
 

#define ubi_trLastOf Rp,
Ip,
 ) 
 

Value:

#define ubi_trLeafNode Nd   )     ubi_btLeafNode( (ubi_btNodePtr)(Nd) )
 

#define ubi_trLEFT   0x00
 

#define ubi_trLocate Rp,
Ip,
Op   ) 
 

Value:

#define ubi_trModuleID s,
 )     ubi_btModuleID( s, l )
 

#define ubi_trNewTree N,
C,
 )     ubi_trRoot (N)[1] = {{ NULL, (C), 0, (F) }}
 

#define ubi_trNext  )     ubi_btNext( (ubi_btNodePtr)(P) )
 

#define ubi_trNode   ubi_btNode
 

#define ubi_trNodePtr   ubi_btNodePtr
 

#define ubi_trNormalize  )     ((char)( (W) - ubi_trEQUAL ))
 

#define ubi_trOVERWRITE   0x01
 

#define ubi_trOvwt_OK  )     ((ubi_trOVERWRITE & ((A)->flags))?(ubi_trTRUE):(ubi_trFALSE))
 

#define ubi_trPARENT   0x01
 

#define ubi_trPrev  )     ubi_btPrev( (ubi_btNodePtr)(P) )
 

#define ubi_trRemove Rp,
Dn   )     ubi_btRemove( (ubi_btRootPtr)(Rp), (ubi_btNodePtr)(Dn) )
 

#define ubi_trRevWay  )     ((char)( ubi_trEQUAL - ((W) - ubi_trEQUAL) ))
 

#define ubi_trRIGHT   0x02
 

#define ubi_trRoot   ubi_btRoot
 

#define ubi_trRootPtr   ubi_btRootPtr
 

#define ubi_trSgn  )     ubi_btSgn( x )
 

#define ubi_trTraverse Rp,
En,
Ud   )     ubi_btTraverse((ubi_btRootPtr)(Rp), (ubi_btActionRtn)(En), (void *)(Ud))
 

#define ubi_trTRUE   0xFF
 


Typedef Documentation

typedef void(* ubi_btActionRtn)(ubi_btNodePtr, void *)
 

typedef int(* ubi_btCompFunc)(ubi_btItemPtr, ubi_btNodePtr)
 

typedef unsigned char** ubi_btItemPtr
 

typedef void(* ubi_btKillNodeRtn)(ubi_btNodePtr)
 

typedef struct ubi_btNodeStruct ubi_btNode
 

typedef ubi_btNode* ubi_btNodePtr
 

typedef ubi_btRoot* ubi_btRootPtr
 

typedef unsigned char ubi_trBool
 


Enumeration Type Documentation

enum ubi_trCompOps
 

Enumerator:
ubi_trLT 
ubi_trLE 
ubi_trEQ 
ubi_trGE 
ubi_trGT 


Function Documentation

ubi_btNodePtr ubi_btFind ubi_btRootPtr  RootPtr,
ubi_btItemPtr  FindMe
 

ubi_btNodePtr ubi_btFirst ubi_btNodePtr  Pr  ) 
 

ubi_btNodePtr ubi_btFirstOf ubi_btRootPtr  RootPtr,
ubi_btItemPtr  MatchMe,
ubi_btNodePtr  p
 

ubi_btNodePtr ubi_btInitNode ubi_btNodePtr  uNodePtr  ) 
 

ubi_btRootPtr ubi_btInitTree ubi_btRootPtr  RootPtr,
ubi_btCompFunc  CompFunc,
char  Flags
 

ubi_trBool ubi_btInsert ubi_btRootPtr  RootPtr,
ubi_btNodePtr  NewNode,
ubi_btItemPtr  ItemPtr,
ubi_btNodePtr OldNode
 

unsigned long ubi_btKillTree ubi_btRootPtr  RootPtr,
ubi_btKillNodeRtn  FreeNode
 

ubi_btNodePtr ubi_btLast ubi_btNodePtr  Pr  ) 
 

ubi_btNodePtr ubi_btLastOf ubi_btRootPtr  RootPtr,
ubi_btItemPtr  MatchMe,
ubi_btNodePtr  p
 

ubi_btNodePtr ubi_btLeafNode ubi_btNodePtr  leader  ) 
 

ubi_btNodePtr ubi_btLocate ubi_btRootPtr  RootPtr,
ubi_btItemPtr  FindMe,
ubi_trCompOps  CompOp
 

int ubi_btModuleID int  size,
char *  list[]
 

ubi_btNodePtr ubi_btNext ubi_btNodePtr  Pr  ) 
 

ubi_btNodePtr ubi_btPrev ubi_btNodePtr  Pr  ) 
 

ubi_btNodePtr ubi_btRemove ubi_btRootPtr  RootPtr,
ubi_btNodePtr  DeadNode
 

long ubi_btSgn long  x  ) 
 

unsigned long ubi_btTraverse ubi_btRootPtr  RootPtr,
ubi_btActionRtn  EachNode,
void *  UserData
 


Generated on Wed Jul 26 13:26:55 2006 for XSB by  doxygen 1.4.5