mMakeHdr Function Call

Function Arguments

/*-***********************************************************************/
/*                                                                       */
/*  mMakeHdr                                                             */
/*                                                                       */
/*  Read through a table of image metadata and find the 'best' header    */
/*  for a mosaic of the set of images.                                   */
/*                                                                       */
/*   char  *tblfile        Input image metadata table                    */
/*   char  *template       Output image header template                  */
/*                                                                       */
/*   char  *csys           Coordinate system (e.g. "EquJ", "Galactic").  */
/*                         Fairly forgiving                              */
/*                                                                       */
/*   double equinox        Coordinate system equinox (e.g. 2000.0)       */
/*                                                                       */
/*   double pixelScale     Pixel scale in degrees                        */
/*                                                                       */
/*   int    northAligned   Defaults to minimum bounding box around       */
/*                         input images.  This forces template to be     */
/*                         north-aligned                                 */
/*                                                                       */
/*   double pad            Optional extra padding around output template */
/*                                                                       */
/*   int    isPercentage   Pad is in pixels by default.  This changes    */
/*                         that to a percentage of the image size        */
/*                                                                       */
/*   int    maxPixel       Setting the pixel scale can result in really  */
/*                         big images.  This forces a maximum number     */
/*                         of pixels in NAXIS1, NAXIS2                   */
/*                                                                       */
/*   int    debug          Debugging output level                        */
/*                                                                       */
/*************************************************************************/

struct mMakeHdrReturn *mMakeHdr(char *tblfile, char *template, char *csysin, double equinox, double pixelScale, 
                                int northAligned, double pad, int isPercentage, int maxPixel, int debugin)

Return Structure

struct mMakeHdrReturn
{
   int    status;        // Return status (0: OK, 1:ERROR)
   char   msg [1024];    // Return message (for error return)
   char   json[4096];    // Return parameters as JSON string
   char   note[1024];    // Cautionary message (only there if needed).   
   int    count;         // Number of images in metadata table.
   int    ncube;         // Number of images that have 3/4 dimensions.
   int    naxis1;        // X axis pixel count in output template.
   int    naxis2;        // Y axis pixel count in output template.
   double clon;          // Center longitude for template.
   double clat;          // Center latitude for template.
   double lonsize;       // Template dimensions in X.
   double latsize;       // Template dimensions in Y.
   double posang;        // Rotation angle of template.
   double lon1;          // Image corners (lon of first corner).
   double lat1;          // Image corners (lat of first corner).
   double lon2;          // Image corners (lon of second corner).
   double lat2;          // Image corners (lat of second corner).
   double lon3;          // Image corners (lon of third corner).
   double lat3;          // Image corners (lat of third corner).
   double lon4;          // Image corners (lon of fourth corner).
   double lat4;          // Image corners (lat of fourth corner).
};