16#ifndef _DEFAULT_SOURCE
17#define _DEFAULT_SOURCE
83 const size_t size,
const size_t offset);
102 const size_t size,
const size_t offset);
163 const char *rasterWkt,
const bool geometriesAreFootprints,
const bool useFastGeodesicAreaCalculation);
195 double complementaryAxis,
double rotation);
int writeWeightedMeans(meanVector *values, const char *filePath)
Write area weighted means to file in format usable by FORCE.
meanVector * calculateAreaWeightedMean(intersectionVector *intersections, const char *rasterWkt, const bool geometriesAreFootprints, const bool useFastGeodesicAreaCalculation)
Compute area weighted mean for features of AOI dataset.
stringList * parseLogFile(const char *filePath)
Parse logfile for processing.
int averagePILRawDataWithSizeOffset(const struct rawData *data, struct averagedData *average, const size_t size, const size_t offset)
Compute arithmetic mean pixel values across raster band dimension for a subset of bands.
int averageRawData(const struct rawData *data, struct averagedData *average)
Compute arithmetic mean pixel values across raster band dimension for all bands.
int backFillOptions(option_t *options, GDALDatasetH dataset)
Deduce temporal information from a given dataset.
int writeUpdatedLogFile(stringList *list, const char *filePath)
Update logfile with new dataset statuses.
void freeRawData(struct rawData *data)
Free encapsulated fields of raw data struct.
int averageRawDataWithSizeOffset(const struct rawData *data, struct averagedData *average, const size_t size, const size_t offset)
Compute arithmetic mean pixel values across raster band dimension for a subset of bands.
int readRasterDataset(GDALDatasetH raster, struct rawData *dataBuffer)
Read all bands of an GDAL raster dataset into a buffer.
int reorderToBandInterleavedByPixel(struct rawData *data)
Transpose data tensor from band sequential to band interleaved by pixel.
void freeAverageData(struct averagedData *data)
Free encapsulated fields of averaged data struct.
double coordinateFromCell(double origin, double axisOfInterest, double pixelExtent, double complementaryAxis, double rotation)
Compute corner coordinates of raster cell based on geo transformation.
int process(option_t *options)
Main procedure to process downloaded ERA-5 datasets.
OGRGeometryH mergeFootprintSplitAtDateline(const OGRGeometryH splitFootprint)
Shift and merge a Multipolygon split at the dateline.