1. /* ===========================================================
  2. * JFreeChart : a free chart library for the Java(tm) platform
  3. * ===========================================================
  4. *
  5. * (C) Copyright 2000-2004, by Object Refinery Limited and Contributors.
  6. *
  7. * Project Info: http://www.jfree.org/jfreechart/index.html
  8. *
  9. * This library is free software; you can redistribute it and/or modify it under the terms
  10. * of the GNU Lesser General Public License as published by the Free Software Foundation;
  11. * either version 2.1 of the License, or (at your option) any later version.
  12. *
  13. * This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
  14. * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  15. * See the GNU Lesser General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU Lesser General Public License along with this
  18. * library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
  19. * Boston, MA 02111-1307, USA.
  20. *
  21. * [Java is a trademark or registered trademark of Sun Microsystems, Inc.
  22. * in the United States and other countries.]
  23. *
  24. * ----------------------
  25. * IntervalXYDataset.java
  26. * ----------------------
  27. * (C) Copyright 2001-2004, by Object Refinery Limited and Contributors.
  28. *
  29. * Original Author: Mark Watson (www.markwatson.com);
  30. * Contributor(s): David Gilbert (for Object Refinery Limited);
  31. *
  32. * $Id: IntervalXYDataset.java,v 1.1 2004/08/31 15:36:12 mungady Exp $
  33. *
  34. * Changes
  35. * -------
  36. * 18-Oct-2001 : Version 1, thanks to Mark Watson (DG);
  37. * 22-Oct-2001 : Renamed DataSource.java --> Dataset.java etc (DG);
  38. * 06-May-2004 : Added methods that return double primitives (DG);
  39. *
  40. */
  41. package org.jfree.data.xy;
  42. /**
  43. * An extension of the {@link XYDataset} interface that allows a range of data to be
  44. * defined for the X values, the Y values, or both the X and Y values. This interface is
  45. * used to support (among other things) bar plots against numerical axes.
  46. */
  47. public interface IntervalXYDataset extends XYDataset {
  48. /**
  49. * Returns the starting X value for the specified series and item.
  50. *
  51. * @param series the series index (zero-based).
  52. * @param item the item index (zero-based).
  53. *
  54. * @return The value.
  55. */
  56. public Number getStartX(int series, int item);
  57. /**
  58. * Returns the start x-value (as a double primitive) for an item within a series.
  59. *
  60. * @param series the series (zero-based index).
  61. * @param item the item (zero-based index).
  62. *
  63. * @return The start x-value.
  64. */
  65. public double getStartXValue(int series, int item);
  66. /**
  67. * Returns the ending X value for the specified series and item.
  68. *
  69. * @param series the series index (zero-based).
  70. * @param item the item index (zero-based).
  71. *
  72. * @return The value.
  73. */
  74. public Number getEndX(int series, int item);
  75. /**
  76. * Returns the end x-value (as a double primitive) for an item within a series.
  77. *
  78. * @param series the series index (zero-based).
  79. * @param item the item index (zero-based).
  80. *
  81. * @return The end x-value.
  82. */
  83. public double getEndXValue(int series, int item);
  84. /**
  85. * Returns the starting Y value for the specified series and item.
  86. *
  87. * @param series the series index (zero-based).
  88. * @param item the item index (zero-based).
  89. *
  90. * @return The value.
  91. */
  92. public Number getStartY(int series, int item);
  93. /**
  94. * Returns the start y-value (as a double primitive) for an item within a series.
  95. *
  96. * @param series the series index (zero-based).
  97. * @param item the item index (zero-based).
  98. *
  99. * @return The start y-value.
  100. */
  101. public double getStartYValue(int series, int item);
  102. /**
  103. * Returns the ending Y value for the specified series and item.
  104. *
  105. * @param series the series index (zero-based).
  106. * @param item the item index (zero-based).
  107. *
  108. * @return The value.
  109. */
  110. public Number getEndY(int series, int item);
  111. /**
  112. * Returns the end y-value (as a double primitive) for an item within a series.
  113. *
  114. * @param series the series index (zero-based).
  115. * @param item the item index (zero-based).
  116. *
  117. * @return The end y-value.
  118. */
  119. public double getEndYValue(int series, int item);
  120. }