The most important classes and interfaces of the Structure Checker API are:
chemaxon.checkers.StructureChecker interface and its implementations: contain the code to detect issues in structures;
chemaxon.checkers.result.StructureCheckerResult interface and its implementations: represent the result of a structure check, and contain information about the problems;
chemaxon.fixers.StructureFixer interface and its implementations: contain the code to fix a certain issue represented by a
Figure 1. Logic of Structure Checker's checkers and fixers
A list of checkers (optionally with preferred fixers) can be executed on a structure using an implementation of
BasicCheckerRunner is meant for checking, and it has basic fixing capabilities,
AdvancedCheckerRunner is more robust, and has better fixing method, like running more iterations and fixer priorities.
A list of checkers can be saved and restored with
ConfigurationWriter implementations located in
writer) packages. Implementations for XML and Action String representation are available.
Checker and Fixer metadata is kept in the
@FixerInfo annotations of the corresponding class.