/usr/include/gmt/gmt_bcr.h is in libgmt-dev 4.5.12-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | /*--------------------------------------------------------------------
* $Id: gmt_bcr.h 10173 2014-01-01 09:52:34Z pwessel $
*
* Copyright (c) 1991-2014 by P. Wessel and W. H. F. Smith
* See LICENSE.TXT file for copying and redistribution conditions.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; version 2 or any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* Contact info: gmt.soest.hawaii.edu
*--------------------------------------------------------------------*/
/* bcr.h -- stuff for implementing bi-dimensional convolution interpolation.
Authors: Walter H F Smith and Remko Scharroo
Date: 23-SEP-1993 and 11-SEP-2007
Version: 4.1.x
This include file defines structures and functions used.
*/
#ifndef _GMT_BCR_H
#define _GMT_BCR_H
#define BCR_NEARNEIGHBOR 0
#define BCR_BILINEAR 1
#define BCR_BSPLINE 2
#define BCR_BICUBIC 3
struct GMT_BCR { /* Used mostly in gmt_support.c */
double rx_inc; /* 1.0 / grd.x_inc */
double ry_inc; /* 1.0 / grd.y_inc */
double offset; /* 0 or 0.5 for grid or pixel registration */
double threshold; /* sum of cardinals must >= threshold in bilinear; else NaN */
GMT_LONG interpolant; /* Interpolation function used (0, 1, 2, 3) */
GMT_LONG n; /* Width of the interpolation function */
GMT_LONG ioff; /* Padding on west side of array */
GMT_LONG joff; /* Padding on north side of array */
GMT_LONG mx; /* Padded array dimension */
GMT_LONG my; /* Ditto */
};
EXTERN_MSC void GMT_bcr_init (struct GRD_HEADER *grd, GMT_LONG *pad, GMT_LONG bilinear, double threshold, struct GMT_BCR *bcr);
EXTERN_MSC double GMT_get_bcr_z (struct GRD_HEADER *grd, double xx, double yy, float *data, struct GMT_EDGEINFO *edgeinfo, struct GMT_BCR *bcr); /* Compute z(x,y) from bcr structure */
#endif /* _GMT_BCR_H */
|