struct opj_j2k: remove unused fields, and add some documentation
[openjpeg.git] / src / lib / openjp2 / t2.h
index c09386229dde0a7e99c3eca67de14c29243d8f3b..66500b1699334d7752f9ad86eec672379028105b 100644 (file)
@@ -1,10 +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, 2011-2012, Centre National d'Etudes Spatiales (CNES), FR
+ * Copyright (c) 2012, CS Systemes d'Information, France
+ * Copyright (c) 2017, IntoPIX SA <support@intopix.com>
  * All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
@@ -28,8 +37,8 @@
  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
  * POSSIBILITY OF SUCH DAMAGE.
  */
-#ifndef __T2_H
-#define __T2_H
+#ifndef OPJ_T2_H
+#define OPJ_T2_H
 /**
 @file t2.h
 @brief Implementation of a tier-2 coding (packetization of code-block data) (T2)
 Tier-2 coding
 */
 typedef struct opj_t2 {
-       /** codec context */
-       opj_common_ptr cinfo;
 
-       /** Encoding: pointer to the src image. Decoding: pointer to the dst image. */
-       opj_image_t *image;
-       /** pointer to the image coding parameters */
-       opj_cp_v2_t *cp;
+    /** Encoding: pointer to the src image. Decoding: pointer to the dst image. */
+    opj_image_t *image;
+    /** pointer to the image coding parameters */
+    opj_cp_t *cp;
 } opj_t2_t;
 
 /** @name Exported functions */
@@ -69,23 +76,26 @@ Encode the packets of a tile to a destination buffer
 @param tpnum            Tile part number of the current tile
 @param tppos            The position of the tile part flag in the progression order
 @param pino             FIXME DOC
-@param t2_mode          If == 0 In Threshold calculation ,If == 1 Final pass
+@param t2_mode          If == THRESH_CALC In Threshold calculation ,If == FINAL_PASS Final pass
+@param p_manager        the user event manager
 */
-opj_bool opj_t2_encode_packets(        opj_t2_t* t2,
-                                                               OPJ_UINT32 tileno,
-                                                               opj_tcd_tile_t *tile,
-                                                               OPJ_UINT32 maxlayers,
-                                                               OPJ_BYTE *dest,
-                                                               OPJ_UINT32 * p_data_written,
-                                                               OPJ_UINT32 len,
-                                                               opj_codestream_info_t *cstr_info,
-                                                               OPJ_UINT32 tpnum,
-                                                               OPJ_INT32 tppos,
-                                                               OPJ_UINT32 pino,
-                                                               J2K_T2_MODE t2_mode);
+OPJ_BOOL opj_t2_encode_packets(opj_t2_t* t2,
+                               OPJ_UINT32 tileno,
+                               opj_tcd_tile_t *tile,
+                               OPJ_UINT32 maxlayers,
+                               OPJ_BYTE *dest,
+                               OPJ_UINT32 * p_data_written,
+                               OPJ_UINT32 len,
+                               opj_codestream_info_t *cstr_info,
+                               OPJ_UINT32 tpnum,
+                               OPJ_INT32 tppos,
+                               OPJ_UINT32 pino,
+                               J2K_T2_MODE t2_mode,
+                               opj_event_mgr_t *p_manager);
 
 /**
 Decode the packets of a tile from a source buffer
+@param tcd TCD handle
 @param t2 T2 handle
 @param tileno number that identifies the tile for which to decode the packets
 @param tile tile for which to decode the packets
@@ -93,25 +103,28 @@ Decode the packets of a tile from a source buffer
 @param p_data_read the source buffer
 @param len length of the source buffer
 @param cstr_info   FIXME DOC
+@param p_manager the user event manager
 
 @return FIXME DOC
  */
-opj_bool opj_t2_decode_packets(        opj_t2_t *t2,
-                                OPJ_UINT32 tileno,
-                                opj_tcd_tile_t *tile,
-                                OPJ_BYTE *src,
-                                OPJ_UINT32 * p_data_read,
-                                OPJ_UINT32 len,
-                                opj_codestream_index_t *cstr_info);
+OPJ_BOOL opj_t2_decode_packets(opj_tcd_t* tcd,
+                               opj_t2_t *t2,
+                               OPJ_UINT32 tileno,
+                               opj_tcd_tile_t *tile,
+                               OPJ_BYTE *src,
+                               OPJ_UINT32 * p_data_read,
+                               OPJ_UINT32 len,
+                               opj_codestream_index_t *cstr_info,
+                               opj_event_mgr_t *p_manager);
 
 /**
  * Creates a Tier 2 handle
  *
- * @param      p_image         Source or destination image
- * @param      p_cp            Image coding parameters.
- * @return             a new T2 handle if successful, NULL otherwise.
+ * @param   p_image     Source or destination image
+ * @param   p_cp        Image coding parameters.
+ * @return      a new T2 handle if successful, NULL otherwise.
 */
-opj_t2_t* opj_t2_create(opj_image_t *p_image, opj_cp_v2_t *p_cp);
+opj_t2_t* opj_t2_create(opj_image_t *p_image, opj_cp_t *p_cp);
 
 /**
 Destroy a T2 handle
@@ -124,4 +137,4 @@ void opj_t2_destroy(opj_t2_t *t2);
 
 /*@}*/
 
-#endif /* __T2_H */
+#endif /* OPJ_T2_H */