navit  0.5.3-trunk
tree.c File Reference
#include <stdio.h>
#include <string.h>
#include "debug.h"
#include "mg.h"

Data Structures

struct  tree_hdr
 
struct  tree_hdr_h
 
struct  tree_leaf_h
 
struct  tree_hdr_v
 
struct  tree_leaf_v
 

Functions

static unsigned int tree_hdr_get_addr (struct tree_hdr *tree)
 
static unsigned int tree_hdr_get_size (struct tree_hdr *tree)
 
static unsigned int tree_hdr_get_low (struct tree_hdr *tree)
 
static unsigned int tree_hdr_h_get_addr (struct tree_hdr_h *tree)
 
static unsigned int tree_hdr_h_get_size (struct tree_hdr_h *tree)
 
static unsigned int tree_leaf_h_get_lower (struct tree_leaf_h *tree)
 
static unsigned int tree_leaf_h_get_higher (struct tree_leaf_h *tree)
 
static unsigned int tree_leaf_h_get_match (struct tree_leaf_h *tree)
 
static unsigned int tree_leaf_h_get_value (struct tree_leaf_h *tree)
 
static unsigned int tree_hdr_v_get_count (struct tree_hdr_v *tree)
 
static unsigned int tree_hdr_v_get_next (struct tree_hdr_v *tree)
 
static unsigned int tree_hdr_v_get_unknown (struct tree_hdr_v *tree)
 
struct tree_leaf_v __attribute__ ((packed))
 
static int tree_leaf_v_get_value (struct tree_leaf_v *tree)
 
static int tree_search_h (struct file *file, unsigned int search)
 
static int tree_search_v (struct file *file, int offset, int search)
 
int tree_search_hv (char *dirname, char *filename, unsigned int search_h, unsigned int search_v, int *result)
 
static struct tree_search_nodetree_search_enter (struct tree_search *ts, int offset)
 
int tree_search_next (struct tree_search *ts, unsigned char **p, int dir)
 
int tree_search_next_lin (struct tree_search *ts, unsigned char **p)
 
void tree_search_init (char *dirname, char *filename, struct tree_search *ts, int offset)
 
void tree_search_free (struct tree_search *ts)
 

Variables

unsigned char key
 
unsigned char p [4]
 

Function Documentation

◆ __attribute__()

struct tree_leaf_v __attribute__ ( (packed)  )

References get_u32_unal(), tree_hdr_v::p, and p.

◆ tree_hdr_get_addr()

static unsigned int tree_hdr_get_addr ( struct tree_hdr tree)
inlinestatic

References get_u32(), tree_hdr::p, and p.

Referenced by tree_search_enter().

◆ tree_hdr_get_low()

static unsigned int tree_hdr_get_low ( struct tree_hdr tree)
inlinestatic

References get_u32(), tree_hdr::p, and p.

Referenced by tree_search_enter().

◆ tree_hdr_get_size()

static unsigned int tree_hdr_get_size ( struct tree_hdr tree)
inlinestatic

References get_u32(), tree_hdr::p, and p.

Referenced by tree_search_enter().

◆ tree_hdr_h_get_addr()

static unsigned int tree_hdr_h_get_addr ( struct tree_hdr_h tree)
inlinestatic

References get_u32(), p, and tree_hdr_h::p.

◆ tree_hdr_h_get_size()

static unsigned int tree_hdr_h_get_size ( struct tree_hdr_h tree)
inlinestatic

References get_u32(), p, and tree_hdr_h::p.

Referenced by tree_search_h().

◆ tree_hdr_v_get_count()

static unsigned int tree_hdr_v_get_count ( struct tree_hdr_v tree)
inlinestatic

References get_u32_unal(), tree_hdr_v::p, and p.

Referenced by tree_search_v().

◆ tree_hdr_v_get_next()

static unsigned int tree_hdr_v_get_next ( struct tree_hdr_v tree)
inlinestatic

References get_u32_unal(), tree_hdr_v::p, and p.

Referenced by tree_search_v().

◆ tree_hdr_v_get_unknown()

static unsigned int tree_hdr_v_get_unknown ( struct tree_hdr_v tree)
inlinestatic

◆ tree_leaf_h_get_higher()

static unsigned int tree_leaf_h_get_higher ( struct tree_leaf_h tree)
inlinestatic

References get_u32(), tree_leaf_h::p, and p.

Referenced by tree_search_h().

◆ tree_leaf_h_get_lower()

static unsigned int tree_leaf_h_get_lower ( struct tree_leaf_h tree)
inlinestatic

References get_u32(), tree_leaf_h::p, and p.

Referenced by tree_search_h().

◆ tree_leaf_h_get_match()

static unsigned int tree_leaf_h_get_match ( struct tree_leaf_h tree)
inlinestatic

References get_u32(), tree_leaf_h::p, and p.

Referenced by tree_search_h().

◆ tree_leaf_h_get_value()

static unsigned int tree_leaf_h_get_value ( struct tree_leaf_h tree)
inlinestatic

References get_u32(), tree_leaf_h::p, and p.

Referenced by tree_search_h().

◆ tree_leaf_v_get_value()

static int tree_leaf_v_get_value ( struct tree_leaf_v tree)
inlinestatic

References get_u32_unal(), p, and tree_leaf_v::p.

Referenced by tree_search_v().

◆ tree_search_enter()

◆ tree_search_free()

void tree_search_free ( struct tree_search ts)

References file_destroy(), and ts.

Referenced by map_search_cleanup().

◆ tree_search_h()

static int tree_search_h ( struct file file,
unsigned int  search 
)
static

◆ tree_search_hv()

int tree_search_hv ( char *  dirname,
char *  filename,
unsigned int  search_h,
unsigned int  search_v,
int *  result 
)

◆ tree_search_init()

void tree_search_init ( char *  dirname,
char *  filename,
struct tree_search ts,
int  offset 
)

◆ tree_search_next()

◆ tree_search_next_lin()

int tree_search_next_lin ( struct tree_search ts,
unsigned char **  p 
)

◆ tree_search_v()

static int tree_search_v ( struct file file,
int  offset,
int  search 
)
static

Variable Documentation

◆ key

◆ p