internal TimeIntegratorBasedAverager(IStorageContext storageContext, ITimeAxisAvgProcessing timeIntegrator, IStationLocator stationLocator, double[] lats, double[] lons, string stationsDimName) { this.timeIntegrator = timeIntegrator; this.stationLocator = stationLocator; this.dataStorage = storageContext; this.stationsLats = lats; this.stationsLons = lons; IDataStorageDefinition storageDef = storageContext.StorageDefinition; //determining dimension order var varDimensions = storageContext.StorageDefinition.VariablesDimensions; foreach (string dataVarName in varDimensions.Where(a => a.Value.Length == 2).Select(b => b.Key)) { if (varDimensions[dataVarName][0] == stationsDimName) { stationsDimNumber.Add(dataVarName, 0); timeDimNumber.Add(dataVarName, 1); } else { stationsDimNumber.Add(dataVarName, 1); timeDimNumber.Add(dataVarName, 0); } } dataRepresentationDictionary = new DataRepresentationDictionary(storageContext.StorageDefinition); missingValuesDict = new MissingValuesDictionary(storageContext.StorageDefinition); varTypes = new Dictionary <string, Type>(storageContext.StorageDefinition.VariablesTypes); }
protected ProjectedSpaceOP(IStorageContext storageContext, ITimeAxisIntegrator timeIntegrator, string LatsAxisName, string LonsAxisName) { this.timeIntegrator = timeIntegrator; missingValuesDictionary = new MissingValuesDictionary(storageContext); dataRepresentationDictionary = new DataRepresentationDictionary(storageContext); }
public LinearTransformDecorator(IStorageContext context, IBatchValueAggregator component) { this.component = component; dataRepresentationDictionary = new DataRepresentationDictionary(context.StorageDefinition); }