CWB
Data Fields
_BARdesc Struct Reference

The BARdesc object: a BAR (Beamed Array) descriptor. More...

#include <barlib.h>

Data Fields

unsigned int x_size
 
unsigned int y_size
 
unsigned int d_size
 matrix dimensions: N, M, N+M More...
 
unsigned int beam_width
 beam width W More...
 
int * d_block_start_x
 vector of diagonal block start points (x coordinate) More...
 
int ** d_block_data
 list of vectors containing diagonal block data More...
 
int * data
 pointer to data space More...
 
int vector_size
 size of allocated arrays More...
 
int data_size
 used by BAR_reinit() to know if it needs to reallocate memory More...
 

Detailed Description

The BARdesc object: a BAR (Beamed Array) descriptor.

The Beamed Array Library implements storage for the kind of sparse matrix required by beam search methods in dynamic programming. A Beamed Array is a N-by-M matrix

 A(x,y) ;  x = 0 ... N-1, y = 0 ... M-1

of integer values, where each right/down diagonal

 d_k := { (x,y) | x + y = k }

contains a single contiguous block of at most W (potentially) nonzero elements. The position of this block on a given diagonal is determined by the first write access to that diagonal. It is assumed that the first element written is the leftmost one, i.e. setting A(x,y) = 1 will define the block on d_(x+y) to be

 {(x,y), (x+1,y-1), ... , (x+W-1, y+W-1)}

Well done if you understand that......

Field Documentation

unsigned int beam_width

beam width W

Referenced by BAR_new(), BAR_read(), BAR_reinit(), and BAR_write().

int** d_block_data

list of vectors containing diagonal block data

Referenced by BAR_delete(), BAR_new(), BAR_read(), BAR_reinit(), and BAR_write().

int* d_block_start_x

vector of diagonal block start points (x coordinate)

Referenced by BAR_delete(), BAR_new(), BAR_read(), BAR_reinit(), and BAR_write().

unsigned int d_size

matrix dimensions: N, M, N+M

Referenced by BAR_new(), and BAR_reinit().

int* data

pointer to data space

Referenced by BAR_delete(), BAR_new(), and BAR_reinit().

int data_size

used by BAR_reinit() to know if it needs to reallocate memory

Referenced by BAR_new(), and BAR_reinit().

int vector_size

size of allocated arrays

Referenced by BAR_new(), and BAR_reinit().

unsigned int x_size

Referenced by BAR_new(), and BAR_reinit().

unsigned int y_size

Referenced by BAR_new(), and BAR_reinit().


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