+
+/**
+Create a new TCD handle
+@param FIXME
+@return Returns a new TCD handle if successful returns NULL otherwise
+*/
+opj_tcd_v2_t* tcd_create_v2(opj_bool p_is_decoder);
+
+/**
+Destroy a previously created TCD handle
+@param tcd TCD handle to destroy
+*/
+void tcd_destroy_v2(opj_tcd_v2_t *tcd);
+
+/**
+ * Initialize the tile coder and may reuse some meory.
+ * @param p_tcd TCD handle.
+ * @param p_image raw image.
+ * @param p_cp coding parameters.
+ * @param p_tile_no current tile index to encode.
+ *
+ * @return true if the encoding values could be set (false otherwise).
+*/
+opj_bool tcd_init_v2(
+ opj_tcd_v2_t *p_tcd,
+ //struct opj_image * p_image,
+ opj_image_header_t * p_image_header,
+ //struct opj_cp * p_cp
+ opj_cp_v2_t * p_cp
+ );
+
+/**
+ * Allocates memory for decoding a specific tile.
+ *
+ * @param p_tcd the tile decoder.
+ * @param p_image the image to decode.
+ * @param p_cp the decoding parameters.
+ * @param p_tile_no the index of the tile received in sequence. This not necesseraly lead to the
+ * tile at index p_tile_no.
+ * @param p_cstr_info codestream info (if any).
+ *
+ * @return true if the remaining data is sufficient.s
+ */
+opj_bool tcd_init_decode_tile(
+ opj_tcd_v2_t *p_tcd,
+ OPJ_UINT32 p_tile_no
+ );
+