001/*- 002 ******************************************************************************* 003 * Copyright (c) 2011, 2016 Diamond Light Source Ltd. 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the Eclipse Public License v1.0 006 * which accompanies this distribution, and is available at 007 * http://www.eclipse.org/legal/epl-v10.html 008 * 009 * Contributors: 010 * Peter Chang - initial API and implementation and/or initial documentation 011 *******************************************************************************/ 012 013package org.eclipse.january.metadata; 014 015import org.eclipse.january.dataset.ILazyDataset; 016import org.eclipse.january.dataset.Slice; 017 018/** 019 * Defines the origin of a dataset which is a slice of a parent dataset 020 */ 021public interface OriginMetadata extends DimensionMetadata { 022 023 /** 024 * Initialize origin of dataset 025 * @param parent 026 * @param outSlice 027 * @param dataDims 028 * @param filePath 029 * @param datasetName 030 */ 031 public void initialize(ILazyDataset parent, Slice[] outSlice, int[] dataDims, String filePath, String datasetName); 032 033 /** 034 * 035 * @return ILazyDataset 036 */ 037 public ILazyDataset getParent(); 038 039 /** 040 * The starting slice 041 * @return the initial slice 042 */ 043 public Slice[] getSliceFromInput(); 044 045 /** 046 * 047 * @return name of dataset 048 */ 049 public String getDatasetName(); 050 051 /** 052 * 053 * @return file path 054 */ 055 public String getFilePath(); 056 057 /** 058 * Current slice information. 059 * @return the current slice. 060 */ 061 public Slice[] getSliceInOutput(); 062 063}