001/*
002// This software is subject to the terms of the Eclipse Public License v1.0
003// Agreement, available at the following URL:
004// http://www.eclipse.org/legal/epl-v10.html.
005// You must accept the terms of that agreement to use this software.
006//
007// Copyright (C) 2001-2005 Julian Hyde
008// Copyright (C) 2005-2011 Pentaho and others
009// All Rights Reserved.
010*/
011package mondrian.olap;
012
013import java.io.PrintWriter;
014
015/**
016 * A <code>Result</code> is the result of running an MDX query. See {@link
017 * Connection#execute}.
018 *
019 * @author jhyde
020 * @since 6 August, 2001
021 */
022public interface Result {
023    /** Returns the query which generated this result. */
024    Query getQuery();
025    /** Returns the non-slicer axes. */
026    Axis[] getAxes();
027    /** Returns the slicer axis. */
028    Axis getSlicerAxis();
029    /** Returns the cell at a given set of coordinates. For example, in a result
030     * with 4 columns and 6 rows, the top-left cell has coordinates [0, 0],
031     * and the bottom-right cell has coordinates [3, 5]. */
032    Cell getCell(int[] pos);
033    void print(PrintWriter pw);
034    void close();
035}
036
037// End Result.java