Hitmap 1.3
|
#include <stdio.h>
#include <string.h>
#include <stdarg.h>
#include <stdlib.h>
#include <limits.h>
#include <hit_allocP.h>
#include <hit_sshape.h>
#include <hit_cshape.h>
#include <hit_bshape.h>
#include <unistd.h>
#include <hit_funcop.h>
#include <hit_error.h>
Go to the source code of this file.
Functions | |
void | hit_shapeFree (HitShape shape) |
int | hit_shapeCmp (HitShape sh1, HitShape sh2) |
HitShape | hit_shapeIntersect (HitShape sh1, HitShape sh2) |
HitShape | hit_shapeSubset (HitShape sh1, HitShape sh2) |
HitShape | hit_shapeTileToArray (HitShape sh1, HitShape sh2) |
HitShape | hit_shapeExpand (HitShape shape, int dims, int offset) |
HitShape | hit_shapeDimExpand (HitShape shape, int dim, int position, int offset) |
HitShape | hit_shapeBorder (HitShape shape, int dim, int position, int offset) |
int | hit_nameListName2Index (HitNameList list, int name) |
void | hit_nameListFree (HitNameList list) |
void | hit_nameListCreate (HitNameList *list, int nelems) |
void | hit_nameListClone (HitNameList *dst, HitNameList *src) |
void | hit_nameListAdd (HitNameList *list, int x) |
void | hit_nameListCreateInvNames (HitNameList *list) |
void | dumpShape (HitShape sh) |
Variables | |
HitShape | HIT_SHAPE_NULL = HIT_SHAPE_NULL_STATIC |
HitShape | HIT_SIG_SHAPE_NULL = HIT_SIG_SHAPE_NULL_STATIC |
HitShape | HIT_CSR_SHAPE_NULL = HIT_CSR_SHAPE_NULL_STATIC |
HitShape | HIT_BITMAP_SHAPE_NULL = HIT_BITMAP_SHAPE_NULL_STATIC |
HitShape | HIT_SHAPE_WHOLE = HIT_SHAPE_WHOLE_STATIC |
HitSigShape | HIT_SIG_SHAPE_WHOLE = HIT_SIG_SHAPE_WHOLE_STATIC |
HitNameList | HIT_NAMELIST_NULL = HIT_NAMELIST_NULL_STATIC |
Definition of the HitShape types for multidimensional domain shapes. Constructors and functions to manipulate them.
Definition in file hit_shape.c.
void dumpShape | ( | HitShape | sh | ) |
Definition at line 391 of file hit_shape.c.
void hit_nameListAdd | ( | HitNameList * | list, |
int | x | ||
) |
void hit_nameListClone | ( | HitNameList * | dst, |
HitNameList * | src | ||
) |
void hit_nameListCreate | ( | HitNameList * | list, |
int | nelems | ||
) |
void hit_nameListCreateInvNames | ( | HitNameList * | list | ) |
void hit_nameListFree | ( | HitNameList | list | ) |
int hit_nameListName2Index | ( | HitNameList | list, |
int | name | ||
) |
Boundary selection.
Return another shape with the shape of the boundary (or border) elements in a given dimension, or a similar boundary shape but displaced by a given offset in that dimension. This function is useful to compute halos, and other boundary related shapes.
shape | A HitShape. |
dim | The dimension. |
position | Flag to select the border:
|
offset | A positive offset moves the border outside the shape. A negative offser moves the border inside the shape. |
Definition at line 241 of file hit_shape.c.
Compare two shape values.
sh1 | Domain shape. |
sh2 | Domain shape. |
Definition at line 109 of file hit_shape.c.
Expand a boundary.
Return a shape with a given boundary of one selected dimension expanded by an offset. This function is useful to compute halos, and other boundary related shapes.
shape | A HitShape. |
dim | The dimension to expand. |
position | Flag to select the border:
|
offset | A positive offset moves the border outside the shape. A negative offser moves the border inside the shape. |
Definition at line 226 of file hit_shape.c.
Expand boundaries.
Return a shape with the boundaries of several dimensions expanded by a given offset. This function is useful to compute halos, and other boundary related shapes.
shape | A HitShape. |
dims | The number of dimension to expand. |
offset | A positive offset moves the border outside the shape. A negative offser moves the border inside the shape. |
Definition at line 210 of file hit_shape.c.
void hit_shapeFree | ( | HitShape | s | ) |
/* 6. HIT SHAPE FREE FUNTION Free resources of a sparse shape.
[in,out] | s | A domain shape. |
Definition at line 84 of file hit_shape.c.
Intersection of two shapes.
sh1 | Domain shape. |
sh2 | Domain shape. |
Definition at line 123 of file hit_shape.c.
Subset or subselection of a shape in tile coordinates.
Returns a new domain shape with the indexes of the first shape that exist in the second shape when renumbering the first shape in standard C notation (starting at 0, stride 1).
sh1 | Domain shape. |
sh2 | Subselection shape. |
Definition at line 157 of file hit_shape.c.
Transform tile coordinates to array coordinates.
Returns a new domain shape with the indexes of the second shape transformed to array coordinates in the reference system of the first shape.
sh1 | Domain shape. |
sh2 | Subshape in tile coordinates |
Definition at line 181 of file hit_shape.c.
HitShape HIT_BITMAP_SHAPE_NULL = HIT_BITMAP_SHAPE_NULL_STATIC |
Null value for bitmap sparse shapes.
Definition at line 71 of file hit_shape.c.
HitShape HIT_CSR_SHAPE_NULL = HIT_CSR_SHAPE_NULL_STATIC |
Null value for sparse domain shapes.
Definition at line 70 of file hit_shape.c.
HitNameList HIT_NAMELIST_NULL = HIT_NAMELIST_NULL_STATIC |
Definition at line 80 of file hit_shape.c.
HitShape HIT_SHAPE_NULL = HIT_SHAPE_NULL_STATIC |
/* 2. Hit SHAPE NULL CONSTANT Null value for abstract shapes.
The number of dimensions of this value is -1.
Definition at line 60 of file hit_shape.c.
HitShape HIT_SHAPE_WHOLE = HIT_SHAPE_WHOLE_STATIC |
Special value: Whole domain.
Special value to indicate in tile selections that the whole collection of indexes of another shape should be selected.
The number of dimensions of this value is 0.
Definition at line 75 of file hit_shape.c.
HitShape HIT_SIG_SHAPE_NULL = HIT_SIG_SHAPE_NULL_STATIC |
/** Null value for signature shapes.
The number of dimensions of this value is -1.
Definition at line 62 of file hit_shape.c.
HitSigShape HIT_SIG_SHAPE_WHOLE = HIT_SIG_SHAPE_WHOLE_STATIC |
Special value: Whole domain.
Special value to indicate in tile selections that the whole collection of indexes of another shape should be selected.
The number of dimensions of this value is 0.
Definition at line 77 of file hit_shape.c.