xref: /onnv-gate/usr/src/cmd/mdb/common/modules/genunix/avl.h (revision 6712:79afecec3f3c)
1789Sahrens /*
2789Sahrens  * CDDL HEADER START
3789Sahrens  *
4789Sahrens  * The contents of this file are subject to the terms of the
5*6712Stomee  * Common Development and Distribution License (the "License").
6*6712Stomee  * You may not use this file except in compliance with the License.
7789Sahrens  *
8789Sahrens  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9789Sahrens  * or http://www.opensolaris.org/os/licensing.
10789Sahrens  * See the License for the specific language governing permissions
11789Sahrens  * and limitations under the License.
12789Sahrens  *
13789Sahrens  * When distributing Covered Code, include this CDDL HEADER in each
14789Sahrens  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15789Sahrens  * If applicable, add the following below this CDDL HEADER, with the
16789Sahrens  * fields enclosed by brackets "[]" replaced with your own identifying
17789Sahrens  * information: Portions Copyright [yyyy] [name of copyright owner]
18789Sahrens  *
19789Sahrens  * CDDL HEADER END
20789Sahrens  */
21789Sahrens /*
22*6712Stomee  * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
23789Sahrens  * Use is subject to license terms.
24789Sahrens  */
25789Sahrens 
26789Sahrens #ifndef	_MDB_AVL_H
27789Sahrens #define	_MDB_AVL_H
28789Sahrens 
29789Sahrens #pragma ident	"%Z%%M%	%I%	%E% SMI"
30789Sahrens 
31789Sahrens #ifdef	__cplusplus
32789Sahrens extern "C" {
33789Sahrens #endif
34789Sahrens 
35789Sahrens #define	AVL_WALK_NAME	"avl"
36789Sahrens #define	AVL_WALK_DESC	"given any avl_tree_t *, forward walk all " \
37789Sahrens 			"entries in tree"
38789Sahrens 
39789Sahrens extern int avl_walk_init(mdb_walk_state_t *);
40*6712Stomee extern int avl_walk_init_named(mdb_walk_state_t *wsp,
41*6712Stomee     const char *, const char *);
42*6712Stomee extern int avl_walk_init_checked(mdb_walk_state_t *wsp,
43*6712Stomee     const char *, const char *,
44*6712Stomee     int (*)(void *, uintptr_t, void *), void *);
45*6712Stomee extern int avl_walk_init_range(mdb_walk_state_t *wsp, uintptr_t, uintptr_t,
46*6712Stomee     const char *, const char *,
47*6712Stomee     int (*)(void *, uintptr_t, void *), void *);
48789Sahrens extern int avl_walk_step(mdb_walk_state_t *);
49789Sahrens extern void avl_walk_fini(mdb_walk_state_t *wsp);
50789Sahrens 
51789Sahrens #ifdef	__cplusplus
52789Sahrens }
53789Sahrens #endif
54789Sahrens 
55789Sahrens #endif	/* _MDB_AVL_H */
56