| synopsis || functions |

kdu_codestream

Java: Kdu_codestream

[Declared in "../coresys/common/kdu_compressed.h"]


Synopsis

Objects of this class are only interfaces, having the size of a single pointer (memory address). Copying the object has no effect on the underlying state information, but simply serves to provide another interface (or reference) to it.

There is no destructor, because destroying an interface has no impact on the underlying state. Unlike the other interface classes provided for accessing Kakadu's code-stream management sub-system ( kdu_tile, kdu_tile_comp, kdu_resolution, kdu_subband, and so on), this one does have a creation function. The creation function is used to build the internal machinery to which the interface classes provide access.

The internal machinery manages the various entities associated with a JPEG2000 code-stream: tiles, tile-components, resolutions, subbands, precincts and code-blocks. These internal entities are accessed indirectly through the public kdu_tile, kdu_tile_comp, kdu_resolution, kdu_subband, kdu_precinct and kdu_block interface classes. The indirection serves to protect applications from changes in the implementation of the internal machinery and vice-versa.

Perhaps even more importantly, indirect access to the internal code-stream management machinery through these interface classes allows a rotated, flipped, zoomed or spatially restricted view of the actual compressed image to be presented to the application. The application can manipulate the geometry and the spatial region of interest (i.e., a viewport) through various member functions provided by the kdu_codestream interface. The information transferred to or from the application via the various interface classes documented in this header file is transparently massaged so as to give the impression that the geometry of the application's viewport and that of the compressed image are identical.


Public Functions

kdu_codestream

exists {Java: Exists}

operator!

create (3 forms) {Java: Create}

restart (2 forms) {Java: Restart}

share_buffering {Java: Share_buffering}

destroy {Java: Destroy}

enable_restart {Java: Enable_restart}

set_persistent {Java: Set_persistent}

augment_cache_threshold {Java: Augment_cache_threshold}

access_siz {Java: Access_siz}

get_num_components {Java: Get_num_components}

get_bit_depth {Java: Get_bit_depth}

get_signed {Java: Get_signed}

get_subsampling {Java: Get_subsampling}

get_registration {Java: Get_registration}

get_dims {Java: Get_dims}

get_valid_tiles {Java: Get_valid_tiles}

find_tile {Java: Find_tile}

get_tile_dims {Java: Get_tile_dims}

get_max_tile_layers {Java: Get_max_tile_layers}

get_min_dwt_levels {Java: Get_min_dwt_levels}

map_region {Java: Map_region}

set_textualization {Java: Set_textualization}

set_max_bytes {Java: Set_max_bytes}

set_min_slope_threshold {Java: Set_min_slope_threshold}

set_resilient {Java: Set_resilient}

set_fussy {Java: Set_fussy}

set_fast {Java: Set_fast}

apply_input_restrictions {Java: Apply_input_restrictions}

change_appearance {Java: Change_appearance}

open_tile {Java: Open_tile}

get_comment {Java: Get_comment}

add_comment {Java: Add_comment}

flush {Java: Flush}

trans_out {Java: Trans_out}

ready_for_flush {Java: Ready_for_flush}

get_total_bytes {Java: Get_total_bytes}

get_num_tparts {Java: Get_num_tparts}

collect_timing_stats {Java: Collect_timing_stats}

get_timing_stats {Java: Get_timing_stats}

get_compressed_data_memory {Java: Get_compressed_data_memory}

get_compressed_state_memory {Java: Get_compressed_state_memory}


| top || synopsis || functions |