X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fopenjp2%2Ftgt.h;h=9818208b82075922ebd5007d4cab18f587efb122;hb=15615751b840d5b85a46292cf8fe393dab8e1a8b;hp=415eee2d28fc06af3f6af9730150f1696c5ff2d3;hpb=394db7b7382ee5b868b193febae6b119ff03c59c;p=openjpeg.git diff --git a/src/lib/openjp2/tgt.h b/src/lib/openjp2/tgt.h index 415eee2d..9818208b 100644 --- a/src/lib/openjp2/tgt.h +++ b/src/lib/openjp2/tgt.h @@ -1,11 +1,19 @@ /* - * Copyright (c) 2002-2007, Communications and Remote Sensing Laboratory, Universite catholique de Louvain (UCL), Belgium - * Copyright (c) 2002-2007, Professor Benoit Macq + * The copyright in this software is being made available under the 2-clauses + * BSD License, included below. This software may be subject to other third + * party and contributor rights, including patent rights, and no such rights + * are granted under this license. + * + * Copyright (c) 2002-2014, Universite catholique de Louvain (UCL), Belgium + * Copyright (c) 2002-2014, Professor Benoit Macq * Copyright (c) 2001-2003, David Janssens * Copyright (c) 2002-2003, Yannick Verschueren - * Copyright (c) 2003-2007, Francois-Olivier Devaux and Antonin Descampe + * Copyright (c) 2003-2007, Francois-Olivier Devaux + * Copyright (c) 2003-2014, Antonin Descampe * Copyright (c) 2005, Herve Drolon, FreeImage Team * Copyright (c) 2008, Jerome Fimes, Communications & Systemes + * Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France + * Copyright (c) 2012, CS Systemes d'Information, France * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -30,8 +38,8 @@ * POSSIBILITY OF SUCH DAMAGE. */ -#ifndef __TGT_H -#define __TGT_H +#ifndef OPJ_TGT_H +#define OPJ_TGT_H /** @file tgt.h @brief Implementation of a tag-tree coder (TGT) @@ -47,22 +55,21 @@ are used by some function in T2.C. Tag node */ typedef struct opj_tgt_node { - struct opj_tgt_node *parent; - OPJ_INT32 value; - OPJ_INT32 low; - OPJ_UINT32 known; + struct opj_tgt_node *parent; + OPJ_INT32 value; + OPJ_INT32 low; + OPJ_UINT32 known; } opj_tgt_node_t; /** Tag tree */ -typedef struct opj_tgt_tree -{ - OPJ_UINT32 numleafsh; - OPJ_UINT32 numleafsv; - OPJ_UINT32 numnodes; - opj_tgt_node_t *nodes; - OPJ_UINT32 nodes_size; /* maximum size taken by nodes */ +typedef struct opj_tgt_tree { + OPJ_UINT32 numleafsh; + OPJ_UINT32 numleafsv; + OPJ_UINT32 numnodes; + opj_tgt_node_t *nodes; + OPJ_UINT32 nodes_size; /* maximum size taken by nodes */ } opj_tgt_tree_t; @@ -73,38 +80,43 @@ typedef struct opj_tgt_tree Create a tag-tree @param numleafsh Width of the array of leafs of the tree @param numleafsv Height of the array of leafs of the tree +@param p_manager the event manager @return Returns a new tag-tree if successful, returns NULL otherwise */ -opj_tgt_tree_t *tgt_create(OPJ_UINT32 numleafsh, OPJ_UINT32 numleafsv); +opj_tgt_tree_t *opj_tgt_create(OPJ_UINT32 numleafsh, OPJ_UINT32 numleafsv, + opj_event_mgr_t *p_manager); /** * Reinitialises a tag-tree from an exixting one. * - * @param p_tree the tree to reinitialize. - * @param p_num_leafs_h the width of the array of leafs of the tree - * @param p_num_leafs_v the height of the array of leafs of the tree - * @return a new tag-tree if successful, NULL otherwise + * @param p_tree the tree to reinitialize. + * @param p_num_leafs_h the width of the array of leafs of the tree + * @param p_num_leafs_v the height of the array of leafs of the tree + * @param p_manager the event manager + * @return a new tag-tree if successful, NULL otherwise */ -opj_tgt_tree_t *tgt_init(opj_tgt_tree_t * p_tree, OPJ_UINT32 p_num_leafs_h, OPJ_UINT32 p_num_leafs_v); - - +opj_tgt_tree_t *opj_tgt_init(opj_tgt_tree_t * p_tree, + OPJ_UINT32 p_num_leafs_h, + OPJ_UINT32 p_num_leafs_v, opj_event_mgr_t *p_manager); /** Destroy a tag-tree, liberating memory @param tree Tag-tree to destroy */ -void tgt_destroy(opj_tgt_tree_t *tree); +void opj_tgt_destroy(opj_tgt_tree_t *tree); /** Reset a tag-tree (set all leaves to 0) @param tree Tag-tree to reset */ -void tgt_reset(opj_tgt_tree_t *tree); +void opj_tgt_reset(opj_tgt_tree_t *tree); /** Set the value of a leaf of a tag-tree @param tree Tag-tree to modify @param leafno Number that identifies the leaf to modify @param value New value of the leaf */ -void tgt_setvalue(opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 value); +void opj_tgt_setvalue(opj_tgt_tree_t *tree, + OPJ_UINT32 leafno, + OPJ_INT32 value); /** Encode the value of a leaf of the tag-tree up to a given threshold @param bio Pointer to a BIO handle @@ -112,7 +124,10 @@ Encode the value of a leaf of the tag-tree up to a given threshold @param leafno Number that identifies the leaf to encode @param threshold Threshold to use when encoding value of the leaf */ -void tgt_encode(opj_bio_t *bio, opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 threshold); +void opj_tgt_encode(opj_bio_t *bio, + opj_tgt_tree_t *tree, + OPJ_UINT32 leafno, + OPJ_INT32 threshold); /** Decode the value of a leaf of the tag-tree up to a given threshold @param bio Pointer to a BIO handle @@ -121,10 +136,13 @@ Decode the value of a leaf of the tag-tree up to a given threshold @param threshold Threshold to use when decoding value of the leaf @return Returns 1 if the node's value < threshold, returns 0 otherwise */ -OPJ_UINT32 tgt_decode(opj_bio_t *bio, opj_tgt_tree_t *tree, OPJ_UINT32 leafno, OPJ_INT32 threshold); +OPJ_UINT32 opj_tgt_decode(opj_bio_t *bio, + opj_tgt_tree_t *tree, + OPJ_UINT32 leafno, + OPJ_INT32 threshold); /* ----------------------------------------------------------------------- */ /*@}*/ /*@}*/ -#endif /* __TGT_H */ +#endif /* OPJ_TGT_H */