The BEAT-II Java interface consists of a Java package 'nl.stcorp.beatl2', containing several classes and methods that allow the user to easily access data inside atmospheric product files.
The BEAT-II Java interface contains a wrapping of the BEAT-II C interface.
The main difference between the C and the Java interfaces is that for Java a number of classes (Beatl2, Record and DataType) have been defined to which the various functions are attached as methods (comparable to the similarly named structs at the C level). These methods are either static class methods (for global BEAT-II functions not directly involving a data product), or instance methods (for BEAT-II functions that are specific to a Record or DataType, i.e. would take a pointer to such a struct as their first parameter in the C version).
In addition, the Java interface renames all functions and variables to be more Java-like (i.e. use 'camelCase'). The prefix that most of the C function names have ('beatl2_', 'beatl2_product_') have also been removed as redundant, because the methods now all exist in the scope of a particular Class that generally corresponds to that prefix (e.g. 'beatl2_init()' becomes 'Beatl2.init()', not 'Beatl2.beatl2_init()').
A final difference is that the error return codes of the C interface have been replaced by an exception mechanism at the Java layer. Most BEAT-II methods need to be wrapped in a try-catch pair that tests for a Beatl2Exception occurrance. If something goes wrong, that exception will be thrown, its message containing the original BEAT-II error message returned by the underlying C function.
The underlying BEAT-II C interface API documentation remains the authoritative reference documentation source for BEAT-II functionality. The Java API information provided here is basic and mainly serves to (a) document the method and parameter names, and (b) give information about those areas in which there is a significant difference between the C and Java interface other than what has already been described here. Documentation on the CODA enumerated types can also be found in the C API documentation.
Each class has a separate section that contains its general description together with descriptions for all types, variables, methods, etc. that are part of this class.