Augmented exceptions are exceptions containing features from both the ErrorLogger package and the Exceptions package. These hybrid exceptions also carry with them an extra object of some user-specified type. Augmented exceptions come in two flavors:
This site gives a basic tutorial on how to use augmented exceptions. The ErrorLogger Package and the Exceptions Package have plenty of other features that can be used with augmented exceptions. An example program is in the "test" directory of the ZMtools module under the name logThrow.
The ZMexAugmented and ZMexDerivedAug classes use the logging features of the ErrorLogger package while implementing the same convenient hierarchy that comes with the Exceptions package. Augmented exceptions are implemented with templates so the extra object can be almost any type. To utilize this extra object a unique handler must be constructed by the frameworker to alter or examine the extra object. When these exceptions are thrown they are logged through the ErrorLogger package.
Comments, questions about getting started, feature needs, and bug/annoyance reports may be sent to zoom-support@fnal.gov or zoom@fnal.gov.