libdap Updated for version 3.20.11
libdap4 is an implementation of OPeNDAP's DAP protocol.


This reference documentation corresponds to version 3.20.11 of libdap, a C++ implementation of DAP2, with some extensions. The libdap library includes classes and functions which implement DAP 2.0 as well as utilities which simpify building clients and servers for DAP 2.0 and DAP4.0.

Doxygen Conventions

This section lists some conventions used by the Doxygen comments which are used to generate this Reference Guide. Follow these conventions when adding to or modifying the reference documentation.


  • When using the name of a parameter, use italics (the e command or em tag).
  • Use the c command or code tag when talking about literal text.
  • When talking about functions or methods, using func() or func(arg0, ..., agrN) will get Doxygen to insert a link to its documentation.
  • Typos: If you're using emacs, the command ispell-comments-and-strings may help in removing typos in the comments (and strings ...)


Classes should be documented in the header (.h) file where they are defined.

Commands that should be used for the documentation of classes:

Use this to attribute authorship. Include this for all the classes except internal ones which are not visible to users of the library.

Methods and Functions

Methods should be documented in the implementation (.cc) files where they are defined. You can put the brief documentation in the header file, but that may be more confusing than keeping all the method documentation in one place.

Functions should be documented in their implementation files.

Commands that should be used for the documentation of public methods and non-static functions:


Include for all parameters. Doxygen complains if an overloaded method changes a parameter name, so scan the warnings and try to keep the names in sync..


Include for all methods that return something unless the method is so simple its full description starts off with "Returns..."


Include for all methods. In doxy.conf I have turned off the option that generates the brief entry from the first sentence of the detailed doc and the option that includes the brief documentation in the detailed documentation. So, the brief doc will appear only with the summary information and not with the detailed documentation for the method.


Document the exceptions using the exception command.