OpenJPEG  1.5.1
Data Structures | Typedefs
TGT - Implementation of a tag-tree coder

Data Structures

struct  opj_tgt_node
 Tag node. More...
 
struct  opj_tgt_tree
 Tag tree. More...
 

Typedefs

typedef struct opj_tgt_node opj_tgt_node_t
 Tag node. More...
 
typedef struct opj_tgt_tree opj_tgt_tree_t
 Tag tree. More...
 

Exported functions

opj_tgt_tree_ttgt_create (int numleafsh, int numleafsv)
 Create a tag-tree. More...
 
void tgt_destroy (opj_tgt_tree_t *tree)
 Destroy a tag-tree, liberating memory. More...
 
void tgt_reset (opj_tgt_tree_t *tree)
 Reset a tag-tree (set all leaves to 0) More...
 
void tgt_setvalue (opj_tgt_tree_t *tree, int leafno, int value)
 Set the value of a leaf of a tag-tree. More...
 
void tgt_encode (opj_bio_t *bio, opj_tgt_tree_t *tree, int leafno, int threshold)
 Encode the value of a leaf of the tag-tree up to a given threshold. More...
 
int tgt_decode (opj_bio_t *bio, opj_tgt_tree_t *tree, int leafno, int threshold)
 Decode the value of a leaf of the tag-tree up to a given threshold. More...
 

Detailed Description

Typedef Documentation

typedef struct opj_tgt_node opj_tgt_node_t

Tag node.

typedef struct opj_tgt_tree opj_tgt_tree_t

Tag tree.

Function Documentation

opj_tgt_tree_t* tgt_create ( int  numleafsh,
int  numleafsv 
)

Create a tag-tree.

Parameters
numleafshWidth of the array of leafs of the tree
numleafsvHeight of the array of leafs of the tree
Returns
Returns a new tag-tree if successful, returns NULL otherwise

References opj_tgt_tree::nodes, opj_tgt_tree::numleafsh, opj_tgt_tree::numleafsv, opj_tgt_tree::numnodes, opj_calloc, opj_free, opj_malloc, opj_tgt_node::parent, and tgt_reset().

Referenced by tcd_init_encode(), tcd_malloc_decode_tile(), and tcd_malloc_encode().

int tgt_decode ( opj_bio_t bio,
opj_tgt_tree_t tree,
int  leafno,
int  threshold 
)

Decode the value of a leaf of the tag-tree up to a given threshold.

Parameters
bioPointer to a BIO handle
treeTag-tree to decode
leafnoNumber that identifies the leaf to decode
thresholdThreshold to use when decoding value of the leaf
Returns
Returns 1 if the node's value < threshold, returns 0 otherwise

References bio_read(), opj_tgt_node::low, opj_tgt_tree::nodes, opj_tgt_node::parent, and opj_tgt_node::value.

Referenced by t2_decode_packet().

void tgt_destroy ( opj_tgt_tree_t tree)

Destroy a tag-tree, liberating memory.

Parameters
treeTag-tree to destroy

References opj_tgt_tree::nodes, and opj_free.

Referenced by tcd_free_decode_tile(), tcd_free_encode(), and tcd_init_encode().

void tgt_encode ( opj_bio_t bio,
opj_tgt_tree_t tree,
int  leafno,
int  threshold 
)

Encode the value of a leaf of the tag-tree up to a given threshold.

Parameters
bioPointer to a BIO handle
treeTag-tree to modify
leafnoNumber that identifies the leaf to encode
thresholdThreshold to use when encoding value of the leaf

References bio_write(), opj_tgt_node::known, opj_tgt_node::low, opj_tgt_tree::nodes, opj_tgt_node::parent, and opj_tgt_node::value.

Referenced by t2_encode_packet().

void tgt_reset ( opj_tgt_tree_t tree)

Reset a tag-tree (set all leaves to 0)

Parameters
treeTag-tree to reset

References opj_tgt_node::known, opj_tgt_node::low, opj_tgt_tree::nodes, opj_tgt_tree::numnodes, and opj_tgt_node::value.

Referenced by t2_decode_packet(), t2_encode_packet(), and tgt_create().

void tgt_setvalue ( opj_tgt_tree_t tree,
int  leafno,
int  value 
)

Set the value of a leaf of a tag-tree.

Parameters
treeTag-tree to modify
leafnoNumber that identifies the leaf to modify
valueNew value of the leaf

References opj_tgt_tree::nodes, opj_tgt_node::parent, and opj_tgt_node::value.

Referenced by t2_encode_packet().