OPeNDAP Hyrax Back End Server (BES)
Updated for version 3.8.3
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
avltree.h
Go to the documentation of this file.
1
/*
2
* FILENAME: avltree.h
3
*
4
* CAVEAT:
5
* No claims are made as to the suitability of the accompanying
6
* source code for any purpose. Although this source code has been
7
* used by the NOAA, no warranty, expressed or implied, is made by
8
* NOAA or the United States Government as to the accuracy and
9
* functioning of this source code, nor shall the fact of distribution
10
* constitute any such endorsement, and no responsibility is assumed
11
* by NOAA in connection therewith. The source code contained
12
* within was developed by an agency of the U.S. Government.
13
* NOAA's National Geophysical Data Center has no objection to the
14
* use of this source code for any purpose since it is not subject to
15
* copyright protection in the U.S. If this source code is incorporated
16
* into other software, a statement identifying this source code may be
17
* required under 17 U.S.C. 403 to appear with any copyright notice.
18
*/
19
20
#ifndef AVLTREE_H__
21
#define AVLTREE_H__
22
23
typedef
int
*
TREE
;
/* Dummy typedef for a tree. */
24
25
typedef
struct
_leaf
26
{
27
struct
_leaf
*
left
;
28
struct
_leaf
*
right
;
29
unsigned
size
: 14 ;
30
unsigned
bal
: 2 ;
31
}
32
HEADER
;
33
/* Possible values of bal field. Can be */
34
/* any three consecutive numbers but */
35
/* L < B < R must hold. */
36
#define L 0
/* Left subtree is larger */
37
#define B 1
/* Balanced subtree */
38
#define R 2
/* Right subtree is larger */
39
40
HEADER
*
insert
(
HEADER
**,
HEADER
*,
int
(*)(
void
*,
void
*) );
41
42
void
tprint
(
TREE
* ,
void
(*)(), FILE* );
43
44
HEADER
*
talloc
(
int
);
45
void
freeall
(
HEADER
** );
46
47
#endif
/* AVLTREE_H__ */
talloc
HEADER * talloc(int)
_leaf::bal
unsigned bal
Definition:
avltree.h:30
tprint
void tprint(TREE *, void(*)(), FILE *)
insert
HEADER * insert(HEADER **, HEADER *, int(*)(void *, void *))
_leaf::size
unsigned size
Definition:
avltree.h:29
_leaf
Definition:
avltree.h:25
freeall
void freeall(HEADER **)
TREE
int * TREE
Definition:
avltree.h:23
_leaf::right
struct _leaf * right
Definition:
avltree.h:28
_leaf::left
struct _leaf * left
Definition:
avltree.h:27
HEADER
struct _leaf HEADER
modules
freeform_handler
FFND
avltree.h
Generated by
1.8.9.1