| synopsis || arguments || prev || next |
void set_used_standard_feature( kdu_uint16 feature_id, kdu_byte fully_understand_sub_expression=255, kdu_byte decode_completely_sub_expression=255)
Java: void Set_used_standard_feature( int feature_id, byte fully_understand_sub_expression, byte decode_completely_sub_expression)
[Declared in "../apps/compressed_io/jpx.h"]
This function is provided to allow applications to customize the contents of the reader requirements box. The function is used both to identify the contents of the file and also to generate "fully understand" and "decode completely" expressions.
The "fully understand" and "decode completely" expressions are each evaluated by taking the logical AND of a collection of sub-expressions. Each sub_expression is evaluated by taking the logical OR of a collection of features. If any of the features identified by the sub-expression is available to the reader, that sub-expression evaluates to true. If all sub-expressions evaluate to true, the corresponding "fully understand" or "decode completely" expression evaluates to true. If there are no sub-expressions at all, the "fully understand" and "decode completely" expressions also evaluate to true.
For an explanation of the difference between the "fully understand" and "decode completely" expressions, see the comments appearing with the test_fully_understand and test_decode_completely functions.
In addition to the sub-expressions generated here, the jpx_target object builds its own sub-expressions to represent the features it knows about. The features which it knows about are those marked with an asterisk in the list of standard features appearing with the check_feature function. If any of those features are not explicitly used to form sub-expressions by means of the present function, they will be formed into sub-expressions which identify them as required both to completely decode and to fully understand the file's contents, wherever this makes sense.
See the check_standard_feature function for a list of standard feature identifiers.
Indicates which sub-expression of the "fully understand" expression this feature is being added to. The index has no particular meaning except to associate multiple features in the same sub-expression to be associated with one another. However, valid sub-expression indices must lie in the range 0 to 254. The special value of 255 means that the feature is not being added to any "fully understand" sub-expression. This is useful if the feature is only to be added to "decode completely" sub-expressions. It also provides a useful mechanism for preventing the internal object from automatically asserting that the feature is required to fully understand the file, if that feature is believed to have been used.
Indicates which sub-expression of the "decode completely" expression this feature is being added to. The index has no particular meaning except to associate multiple features in the same sub-expression with one another. However, valid sub-expression indices must lie in the range 0 to 254. The special value of 255 means that the feature is not being added to any "decode completely" sub-expression. This is useful if the feature is only to be added to "fully understand" sub-expressions. It also provides a useful mechanism for preventing the internal object from automatically asserting that the feature is required to completely decode the file, if that feature is believed to have been used.