#ifndef PM_FPA_COPY_H
#define PM_FPA_COPY_H

// Copy the FPA components, including the pixels
bool pmFPACopy(pmFPA *target,            // The target FPA
               pmFPA *source             // The source FPA, to be copied
              );
bool pmChipCopy(pmChip *target,          // The target chip
                pmChip *source           // The source chip, to be copied
               );
bool pmCellCopy(pmCell *target,          // The target cell
                pmCell *source           // The source cell, to be copied
               );

// Versions that copy the structure and not the pixels; they also allow binning
bool pmFPACopyStructure(pmFPA *target,   // The target FPA
                        pmFPA *source,   // The source FPA, to be copied
                        int xBin, int yBin     // Binning factors in x and y
                       );
bool pmChipCopyStructure(pmChip *target, // The target chip
                         pmChip *source, // The source chip, to be copied
                         int xBin, int yBin   // Binning factors in x and y
                        );
bool pmCellCopyStructure(pmCell *target, // The target cell
                         pmCell *source, // The source cell, to be copied
                         int xBin, int yBin // Binning factors in x and y
                        );


#endif
