# codacheck

This documentation describes the functionality of the codacheck tool which is part of CODA.

## General description

The product format definitions in CODA should be of sufficient quality that whenever problems are detected while reading product files, it is usually the product files that are at fault. The codacheck program was written with this in mind. It uses CODA as an active product file problem-detection tool. It takes as arguments one or more product files. CODA will try to open each of these files and will actively look for any problems in these files. Any errors are reported in a user-readable way.

        codacheck [-D definitionpath] [<options>] <files>
            Provide a basic sanity check on product files supported by CODA
            Options:
                -d, --definition
                        require products to have a definition in a codadef file,
                        return an error and abort verification otherwise
                        (affects products using formats such as xml/netcdf/hdf)
                -q, --quick
                        only perform a quick check of the product
                        (do not traverse the full product)
                -V, --verbose
                        show more information while performing the check

                --no-mmap
                        disable the use of mmap when opening files

            If you pass a '-' for the <files> section then the list of files will
            be read from stdin.

        codacheck -h, --help
            Show help (this text)

        codacheck -v, --version
            Print the version number of CODA and exit

        CODA will look for .codadef files using a definition path, which is a ':'
        separated (';' on Windows) list of paths to .codadef files and/or to
        directories containing .codadef files.
        By default the definition path is set to a single directory relative to
        the tool location. A different definition path can be set via the
        CODA_DEFINITION environment variable or via the -D option.
        (the -D option overrides the environment variable setting).