Hitmap 1.3
 All Data Structures Namespaces Files Functions Variables Typedefs Friends Macros Groups Pages
Public Member Functions
HitBShape Struct Reference

#include <hit_shape.h>

Inheritance diagram for HitBShape:
Inheritance graph
[legend]
Collaboration diagram for HitBShape:
Collaboration graph
[legend]

Public Member Functions

HitShape hit_bitmapShape (int nvertices)
 
void hit_bShapeFree (HitShape shape)
 
#define hit_bShapeNvertices(shape)   (hit_bShapeCard(shape, 0))
 
#define hit_bShapeNedges(shape)   (hit_bShapeAccess(shape).nz)
 
HIT_BITMAP_TYPE * hit_bShapeDate (HitShape shape)
 
#define hit_bShapeEdgeTarget(s, edge)   (edge)
 
#define hit_bShapeEdgeTargetSkip(s, edge)   (edge%hit_bShapeCard(s,1))
 
#define hit_bShapeGet(bitshape, i, j)
 
#define hit_bShapeSet(bitshape, i, j)
 
#define hit_bShapeClear(bitshape, i, j)
 
#define hit_bShapeSet2(bitshape, i, j)   {hit_bShapeSet(bitshape,i,j); hit_bShapeSet(bitshape,j,i);}
 
#define hit_bShapeGetGlobal(bitshape, i, j)
 
#define hit_bShapeSetGlobal(bitshape, i, j)
 
#define hit_bShapeClearGlobal(bitshape, i, j)
 
#define hit_bShapeSetGlobal2(bitshape, i, j)   {hit_bShapeSetGlobal(bitshape,i,j); hit_bShapeSetGlobal(bitshape,j,i);}
 
#define hit_bShapeVertexToGlobal(s, vertex)   (hit_nameListIndex2Name(hit_bShapeNameList(s,0),vertex))
 
#define hit_bShapeVertexToLocal(s, vertex)   (hit_nameListName2Index(hit_bShapeNameList(s,0),vertex))
 
#define hit_bShapeAddVertex(shapeP, x)   hit_bShapeAddEmptyRow_or_Vertex(shapeP, x, HIT_BSHAPE_GRAPH)
 
HitShape hit_bShapeSelect (HitShape shape, int nvertices, int *vertices)
 
HitShape hit_bShapeExpand (HitShape shape, HitShape original, int amount)
 
void hit_bShapeCreateInvNames (HitShape *shape)
 
#define hit_bShapeAddEdge(shapep, x, y)   hit_bShapeAddElem_or_Edge(shapep, x, y, HIT_BSHAPE_GRAPH)
 
#define hit_bShapeAddEdge2(shape, x, y)   {hit_bShapeAddEdge(shape,x,y); hit_bShapeAddEdge(shape,y,x);}
 
#define hit_bShapeRowIterator(var, shape)   for(var=0; var<hit_bShapeCard(shape, 0); var++)
 
#define hit_bShapeVertexIterator(var, shape)   hit_bShapeRowIterator(var,shape)
 
#define hit_bShapeColumnIterator(var, shape, row)   for(var=hit_bShapeEdgeIteratorNextInternal(shape, -1, row);var<hit_bShapeCard(shape,1);var=hit_bShapeEdgeIteratorNextInternal(shape, var, row))
 
#define hit_bShapeColumnIteratorSkip(var, shape, row)   for(var=hit_bShapeEdgeIteratorNextInternalSkip(shape, row * hit_bShapeCard(shape,1));var<(row+1) * hit_bShapeCard(shape,1);var = hit_bShapeEdgeIteratorNextInternalSkip(shape, var+1))
 
#define hit_bShapeEdgeIterator(var, shape, vertex)   hit_bShapeColumnIterator(var,shape,vertex)
 
#define hit_bShapeEdgeIteratorSkip(var, shape, vertex)   hit_bShapeColumnIteratorSkip(var,shape,vertex)
 
#define hit_bShapeEdgeIteratorDense(var, shape, vertex)   hit_bShapeColumnIteratorDense(var,shape,vertex)
 

Detailed Description

/** ADT for sparse domains in Bitmap format.

This struct uses a Bitmap to represent the non-zero elements in a graph or sparse matrix. It can represent a full structure or a selection of a global structure as far as the selected nodes/elements have contigous indexes.

The current implementaton supports up to two dimensions.

Definition at line 156 of file hit_shape.h.

Member Function Documentation

HitShape hit_bitmapShape ( int  nvertices)

/**

/**

/* 1. Hit Bitmap Shape generating functions Creates a new Bitmap shape with n vertices. This first vertex name is 0.

Parameters
nverticesNumber of vertices.
Returns
The new bitmap sparser shape.

Definition at line 46 of file hit_bshape.c.

Here is the caller graph for this function:

void hit_bShapeCreateInvNames ( HitShape shape)

Creates the inverse translation list of vertex names. This list is used to speedup the translation operation from global to local names. This function will increase the size of the shape.

Parameters
shapeA pointer to HitBShape.
HIT_BITMAP_TYPE * hit_bShapeDate ( HitShape  shape)

Get the data array with the bitmap.

Parameters
shapeA bitmap shape.
Returns
The bitmap data array.
HitShape hit_bShapeExpand ( HitShape  shape,
HitShape  original,
int  amount 
)

Expand a Bitmap Sparse Shape adding new vertices of the original graph.

Parameters
shapeThe shape to expand.
originalThe original shape.
amountThe number of times that the expand algorithm is invoked.
Returns
The new expanded shape.

Definition at line 193 of file hit_bshape.c.

Here is the caller graph for this function:

void hit_bShapeFree ( HitShape  shape)

Hit Bitmap Shape destructor.

Parameters
shapeA Hit Bitmap Shape.

Definition at line 95 of file hit_bshape.c.

Here is the caller graph for this function:

HitShape hit_bShapeSelect ( HitShape  shape,
int  nvertices,
int *  vertices 
)

Create a new bitmap shape selection several vertices.

Parameters
shapeA BShape.
nverticesThe number of vertices selected.
verticesThe list of vertices.
Returns
The selection.

Definition at line 134 of file hit_bshape.c.

Here is the caller graph for this function:


The documentation for this struct was generated from the following files: