Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

mingraph_coding.h File Reference

Contains format description and coding/decoding primitives for mingraph. More...

Go to the source code of this file.

Defines

#define FIX_IJ()   while(j >= dim) { j -= dim; ++i; }

Enumerations

enum  { dbm_INF16 = SHRT_MAX >> 1, dbm_LS_INF16 = dbm_INF16 << 1 }
 Encoding of infinity on 16 bits. More...

Functions

static cindex_t mingraph_readDim (uint32_t info)
static uint32_t mingraph_isCoded16 (uint32_t info)
static uint32_t mingraph_isMinimal (uint32_t info)
static uint32_t mingraph_isCodedIJ (uint32_t info)
static uint32_t mingraph_getTypeIndex (uint32_t info)
static uint32_t mingraph_typeOfIJ (uint32_t info)
static uint32_t mingraph_getInfo (const int32_t *mingraph)
static uint32_t mingraph_getTypeIndexFromPtr (const int32_t *mingraph)
static cindex_t mingraph_readDimFromPtr (const int32_t *mingraph)
static size_t mingraph_getNbConstraints (const int32_t *mingraph)
static const int32_t * mingraph_getCodedData (const int32_t *mingraph)
static raw_t mingraph_raw16to32 (int16_t raw16)
static raw_t mingraph_finite16to32 (int16_t raw16)
static int16_t mingraph_raw32to16 (raw_t raw32)
static int16_t mingraph_finite32to16 (raw_t raw32)
static const uint32_t * mingraph_jumpConstInt16 (const int16_t *ints, size_t n)
 Jump int16 integers, padded int32.
size_t dbm_cleanBitMatrix (const raw_t *dbm, cindex_t dim, uint32_t *bitMatrix, size_t nbConstraints)
 This is a post-processing function for dbm_analyzeForMinDBM to remove constraints of the form x>=0 that are part of the minimal graph but that do not give much information.
static bit_t mingraph_ngetAndSetBit (uint32_t *bits, size_t index)
 Useful function for bit manipulation return a negated bit and set it afterwards.


Detailed Description

Contains format description and coding/decoding primitives for mingraph.

The primitives are typed macros, ie, inlined functions.


Define Documentation

 
#define FIX_IJ  )     while(j >= dim) { j -= dim; ++i; }
 


Enumeration Type Documentation

anonymous enum
 

Encoding of infinity on 16 bits.

Enumeration values:
dbm_INF16 
dbm_LS_INF16 


Function Documentation

size_t dbm_cleanBitMatrix const raw_t dbm,
cindex_t  dim,
uint32_t *  bitMatrix,
size_t  nbConstraints
 

This is a post-processing function for dbm_analyzeForMinDBM to remove constraints of the form x>=0 that are part of the minimal graph but that do not give much information.

Parameters:
dbm,dim,: DBM of dimension dim
bitMatrix,: bit matrix (already computed minimal graph)
nbConstraints,: the number of constraints of the minimal graph.
Returns:
the updated number of constraints of the modified minimal graph where constraints x>=0 may have been removed.
Precondition:
dbm_analyzeForMinDBM has been called before and nbConstraints corresponds to the number of constraints of the minimal graph.

static raw_t mingraph_finite16to32 int16_t  raw16  )  [inline, static]
 

static int16_t mingraph_finite32to16 raw_t  raw32  )  [inline, static]
 

static const int32_t* mingraph_getCodedData const int32_t *  mingraph  )  [inline, static]
 

static uint32_t mingraph_getInfo const int32_t *  mingraph  )  [inline, static]
 

static size_t mingraph_getNbConstraints const int32_t *  mingraph  )  [inline, static]
 

static uint32_t mingraph_getTypeIndex uint32_t  info  )  [inline, static]
 

static uint32_t mingraph_getTypeIndexFromPtr const int32_t *  mingraph  )  [inline, static]
 

static uint32_t mingraph_isCoded16 uint32_t  info  )  [inline, static]
 

static uint32_t mingraph_isCodedIJ uint32_t  info  )  [inline, static]
 

static uint32_t mingraph_isMinimal uint32_t  info  )  [inline, static]
 

static const uint32_t* mingraph_jumpConstInt16 const int16_t *  ints,
size_t  n
[inline, static]
 

Jump int16 integers, padded int32.

Parameters:
ints,: int16 starting point (padded int32)
n,: nb of int16 to jump
Returns:
ints+n padded int32 as int32*

static bit_t mingraph_ngetAndSetBit uint32_t *  bits,
size_t  index
[inline, static]
 

Useful function for bit manipulation return a negated bit and set it afterwards.

instead of having if !base_getOneBit(bitMatrix, index) cnt++; base_setOneBit(bitMatrix, index); we use cnt += mingraph_ngetAndSetBit(bitMatrix, index)

Parameters:
bits,: bit array.
index,: bit index. Reminder: index >> 5 == index/32 index & 31 == index32 index & 31 is the position of the bit for the right integer bits[index >> 5].

static raw_t mingraph_raw16to32 int16_t  raw16  )  [inline, static]
 

static int16_t mingraph_raw32to16 raw_t  raw32  )  [inline, static]
 

static cindex_t mingraph_readDim uint32_t  info  )  [inline, static]
 

static cindex_t mingraph_readDimFromPtr const int32_t *  mingraph  )  [inline, static]
 

static uint32_t mingraph_typeOfIJ uint32_t  info  )  [inline, static]
 


Generated on Fri Jun 30 00:02:45 2006 for Module dbm by  doxygen 1.4.2