H2Lib  3.0
Data Structures | Typedefs | Functions
dblock.h File Reference
#include "dcluster.h"
#include "settings.h"
#include <stdlib.h>
#include <cairo.h>

Go to the source code of this file.

Data Structures

struct  _dblock
 Directional block tree. More...
 
struct  _diradmdata
 Data for directional admissibility condition. More...
 

Typedefs

typedef struct _dblock dblock
 Directional block tree.
 
typedef dblockpdblock
 Pointer to dblock.
 
typedef const dblockpcdblock
 Pointer to constant dblock.
 
typedef struct _diradmdata diradmdata
 Data for directional admissibility condition.
 
typedef diradmdatapdiradmdata
 Pointer to diradmdata.
 
typedef const diradmdatapcdiradmdata
 Pointer to constant diradmdata.
 

Functions

pdblock new_dblock (pdcluster rc, pdcluster cc, uint rd, uint cd, uint rsons, uint csons)
 Create a new directional block. More...
 
void update_dblock (pdblock b)
 Update a directional block. More...
 
void del_dblock (pdblock b)
 Delete a directional block tree. More...
 
uint getactives_dblock ()
 Obtain the number of currently active directional blocks. More...
 
size_t getsize_dblock (pcdblock b)
 Compute the storage size of a directional block tree. More...
 
uint getdepth_dblock (pcdblock b)
 Compute the depth of a directional block tree. More...
 
void cairodraw_dblock (cairo_t *cr, pcdblock b, int levels)
 Draw a directional block tree. More...
 
pdblock build_dblock (pdcluster rc, pdcluster cc, uint l, bool(*admissible)(pdcluster rc, pdcluster cc, uint l, uint *rd, uint *cd, void *data), void *data)
 Build a directional block tree. More...
 
bool parabolic_admissibility (pdcluster rc, pdcluster cc, uint l, uint *rd, uint *cd, void *data)
 Parabolic admissibility condition. More...
 
bool standard_admissibility (pdcluster rc, pdcluster cc, uint l, uint *rd, uint *cd, void *data)
 Standard admissibility condition. More...
 
real getmaxeta_dblock (pcdblock b)
 Compute the maximum of $\diam(t)/\dist(t,s)$ and $\diam(s)/\diam(t,s)$ for all admissible blocks. More...
 
pleveldir remove_unused_direction (pdblock b, pdcluster t, pleveldir lold)
 Remove unused directions and set up new leveldir object. More...
 
pdblockenumerate_dblock (pdblock b)
 Enumerates a directional block tree. More...
 

Detailed Description

Author
Steffen Börm