/** @page files_root Data source file formats Depending how @b HippoDraw was configured when built, it supports creating a data source by reading a file in several formats. The file formats supported are @li @ref file_ascii @li @ref file_fits (optional) @li @ref file_root (optional) The file may be read using either the @ref canvas_menu_file on the canvas window or by Python using the @ref python_interact. @section file_ascii ASCII file The @b HippoDraw application can read and write NTuple data to a plain text file. The format is quite simple. Here is the contents of such a file. @verbatim Mark II Z0 scan Energy Sigma binsize error 90.73999786 29 0.25999999 5.9000001 91.05999756 30 0.23 3.1500001 91.43000031 28.39999962 0.25999999 3 91.5 28.79999924 0.28999999 5.80000019 92.16000366 21.95000076 0.22 7.9000001 92.22000122 22.89999962 0.25 3.0999999 92.95999908 13.5 0.20999999 4.5999999 89.23999786 4.5 0.28 3.5 89.98000336 10.80000019 0.27000001 4.5999999 90.34999847 24.20000076 0.25999999 3.5999999 @endverbatim The first line is the title. It can contain any number of spaces and is terminated by the new line character. The second line contains the labels. You can't see it but they are separated by the tab character to allow blanks to be in the labels. The remaining lines are the data, row by row. Any white space can separate the data. The title line and labels line can be missing. The labels can't be pure numbers, or it will be read as data. @section file_fits FITS files FITS (Flexible Image Transport System) is the standard astronomical data format endorsed by both NASA and the IAU. If @b HippoDraw was configured with CFITSIO, then FITS file containing images and binary or ASCII tables are supported. A FITS file can be read with C++ or Python using the FitsController class. The example of @ref examples_fits_file with Python shows how it is done and is available in the @em examples subdirectory of the installation. @section file_root ROOT files Limited support for reading data from a ROOT file is supported if @b HippoDraw was configured for ROOT support. The C++ @ref ntuple_roottuple explains these limitations. A ROOT file can be read with C++ or Python using the RootController class. The example of @ref examples_root_file with Python shows how it is done and is available in the @em examples subdirectory of the installation. */