#ifndef PP_ARITH_H
#define PP_ARITH_H

#define PPARITH_RECIPE "PPARITH"            /// Name of the recipe to use

/// Parse the arguments
bool ppArithArguments(int argc, char *argv[], ///< Command-line arguments
                      pmConfig *config    ///< Configuration
    );

/// Parse the camera input
bool ppArithCamera(pmConfig *config       ///< Configuration
    );

/// Loop over the FPA hierarchy
bool ppArithLoop(pmConfig *config         ///< Configuration
    );

/// Perform arithmetic on the readout
bool ppArithReadout(pmReadout *output,  ///< Output readout
                    const pmReadout *input1, ///< Input readout
                    const pmReadout *input2, ///< Input readout
                    const pmConfig *config, ///< Configuration
                    const pmFPAview *view ///< View of readout on which to operate
    );

/// Put the program version information into a metadata
void ppArithVersionMetadata(psMetadata *metadata ///< Metadata to populate
    );


#endif
