/[xulu]/trunk/src/appl/parallel/spmd/split/DataPartition.java
ViewVC logotype

Contents of /trunk/src/appl/parallel/spmd/split/DataPartition.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2 - (show annotations)
Wed Feb 25 11:54:01 2009 UTC (15 years, 9 months ago) by mojays
File size: 1945 byte(s)
First Commit, corresponds to Revision 1008 of Wikisquare-SVN 
1 package appl.parallel.spmd.split;
2
3 import java.awt.Rectangle;
4
5 /**
6 * Represents a data partition. It has an id which identifies the resource, which is the mother
7 * of the partition.
8 *
9 * @author Dominik Appl
10 */
11 public interface DataPartition {
12
13 /**
14 * Returns the id of the super data structure this partition is a part of.
15 * @return the id of the super data structure this partition is a part of.
16 */
17 public int getRootID();
18
19 /**
20 * Returns the bounds of the partition as a rectangle. The coordinates
21 * of the rectangle are global (which means relative to the root structure).
22 * @return the bounds of the partition as a rectangle. The coordinates
23 * of the rectangle are global (which means relative to the root structure).
24 */
25 public Rectangle getPartitionBounds();
26 /**
27 * Returns the partition specified by the given {@link Rectangle}. Note, that
28 * partitioning by a rectangle does not mean, that the underlying datastructure
29 * has to be 2D, but only that the splitting has to be at max. 2D.
30 * @param partitionBounds the bounds of the partition which are to be retrieved
31 * in global coordinates (the coordinates should be relative to the root-structure)
32 */
33 public DataPartition getPartition(Rectangle partitionBounds);
34
35 /**
36 * Overwrites the data at the location specified by the {@link Rectangle} with
37 * the given partition-data.
38 *
39 * @param partition the new data
40 * @param partitionBounds the target location of the data (in coordinates of the root structure)
41 */
42 public void setPartition(DataPartition partition, Rectangle partitionBounds);
43
44 /**
45 * Creates an empty Object with the given id. (Used e.g. by Multi-Data-Objects)
46 * @param newID the id of the new Object
47 * @return an Empty element with the same dimension as this element.
48 */
49 public DataPartition getEmpty(int newID);
50
51
52 }

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26