Graphviz 12.0.1~dev.20240716.0800
Loading...
Searching...
No Matches
node.h
Go to the documentation of this file.
1/*************************************************************************
2 * Copyright (c) 2011 AT&T Intellectual Property
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * https://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors: Details at https://graphviz.org
9 *************************************************************************/
10
11#pragma once
12
13#ifdef __cplusplus
14extern "C" {
15#endif
16
17#include <label/index.h>
18
19typedef struct Branch {
21 struct Node *child;
23
24typedef struct Node {
25 int count;
26 int level; /* 0 is leaf, others positive */
29
30void InitNode(Node_t *);
31void InitBranch(Branch_t *);
33int PickBranch(Rect_t *, Node_t *);
34int AddBranch(RTree_t *, Branch_t *, Node_t *, Node_t **);
35void DisconBranch(Node_t *, int);
36void PrintBranch(int, Branch_t *);
37Node_t *RTreeNewNode(void);
38#ifdef RTDEBUG
39void PrintNode(Node_t * n);
40void PrintBranch(int i, Branch_t * b);
41#endif
42
43#ifdef __cplusplus
44}
45#endif
#define NODECARD
Definition index.h:43
Node_t * RTreeNewNode(void)
Definition node.c:24
void InitBranch(Branch_t *)
Definition node.c:42
void PrintBranch(int, Branch_t *)
struct Node Node_t
void InitNode(Node_t *)
Definition node.c:32
void DisconBranch(Node_t *, int)
Definition node.c:172
int PickBranch(Rect_t *, Node_t *)
Definition node.c:105
struct Branch Branch_t
int AddBranch(RTree_t *, Branch_t *, Node_t *, Node_t **)
Definition node.c:147
Rect_t NodeCover(Node_t *)
Definition node.c:81
Definition node.h:19
Rect_t rect
Definition node.h:20
struct Node * child
Definition node.h:21
Definition node.h:24
int level
Definition node.h:26
struct Branch branch[NODECARD]
Definition node.h:27
int count
Definition node.h:25
Definition index.h:65