001 /** 002 * 003 */ 004 package org.wdssii.polarmerger; 005 006 007 /** 008 * 009 * Strategy object used by AbstractMergeableObservations to obtain merged 010 * values from a set of Observation 011 * 012 * @author lakshman 013 * 014 */ 015 public interface ObservationMerger { 016 017 /** The values array is initially all MissingData. Can use the array to set initial state, 018 * but may also change the initial values. 019 * @param values 020 */ 021 void init(float[][][] values); 022 023 /** 024 * Update state 025 * @param values the current set of values in the 3D output grid 026 * @param w_e elevation index 027 * @param w_az azimuth index 028 * @param w_rn range index 029 * @param obs newObservation 030 * @param wt weight of observation 031 */ 032 void update(float[][][] values, int w_e, int w_az, int w_rn, Observation obs, float wt); 033 034 /** 035 * Finish computations, setting the input array to its final values. 036 * @param values 037 */ 038 void finishComputation(float[][][] values); 039 040 }