NCL Home > Documentation > HLUs > User Guide

Overview of the HLU library

The NCAR Graphics High Level Utilities (HLUs) are an alternate Fortran and C programmatic interface to the Low Level Utilities (LLUs). The HLU interface provides most of the functionality of the approximately 500 user-callable subroutines in the LLUs. It is assumed in this section of the document that you have decided on using a Fortran or C interface. If you have not already considered the NCAR Command Language (NCL) interface, you may want to see if it might be more suitable to your purposes.

The HLU interface was created as one of the necessary components of an integrated interactive graphics package. The graphical capability of NCL is provided through the HLUs. Unlike the LLUs, the HLUs can be configured to allow their graphical output to be modified and regenerated without recompiling code.

The HLUs follow an object-oriented design structure similar to X11 widgets. Like widgets, they use resources and resource files as the way of implementing functionality options. The benefits of following the object-oriented model include:

  • Reduction in the amount of redundant code

  • Consistency through combined classes

    For example, the ContourPlot, StreamlinePlot, VectorPlot and XyPlot classes all use the TickMark class as the source of scaled grids.

If you are in doubt as to whether you want to use HLUs or LLUs, read the HLUs vs. LLUs module.