#ifndef PM_FPA_COPY_H
#define PM_FPA_COPY_H

// Copy the FPA components, including the pixels
int pmFPACopy(pmFPA *target,            // The target FPA
              pmFPA *source             // The source FPA, to be copied
             );
int pmChipCopy(pmChip *target,          // The target chip
               pmChip *source           // The source chip, to be copied
              );
int 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
int pmFPACopyStructure(pmFPA *target,   // The target FPA
                       pmFPA *source,   // The source FPA, to be copied
                       int xBin, int yBin     // Binning factors in x and y
                      );
int pmChipCopyStructure(pmChip *target, // The target chip
                        pmChip *source, // The source chip, to be copied
                        int xBin, int yBin   // Binning factors in x and y
                       );
int 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
