|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectdods.dap.BaseType
dods.dap.DVector
dods.dap.DArray
This class is used to hold arrays of other DODS data. The elements of the array can be simple or compound data types. There is no limit on the number of dimensions an array can have, or on the size of each dimension.
If desired, the user can give each dimension of an array a name. You can, for example, have a 360x180 array of temperatures, covering the whole globe with one-degree squares. In this case, you could name the first dimension "Longitude" and the second dimension "Latitude". This can help prevent a great deal of confusion.
The DArray
is used as part of the DGrid
class,
where the dimension names are crucial to its structure. The dimension names
correspond to "Map" vectors, holding the actual values for that column of
the array.
Each array dimension carries with it its own projection information. The
projection inforamtion takes the form of three integers: the start, stop,
and stride values. This is clearest with an example. Consider a
one-dimensional array 10 elements long. If the start value of the
dimension constraint is 3, then the constrained array appears to be seven
elements long. If the stop value is changed to 7, then the array appears
to be five elements long. If the stride is changed to two, the array will
appear to be 3 elements long. Array constraints are written as
[start:stride:stop]
.
NB: DODS uses zero-based indexing.
A = [1 2 3 4 5 6 7 8 9 10]
A[3::] = [4 5 6 7 8 9 10]
A[3::7] = [4 5 6 7 8]
A[3:2:7] = [4 6 8]
A[0:3:9] = [1 4 7 10]
DGrid
,
DVector
,
BaseType
Constructor Summary | |
DArray()
Constructs a new DArray . |
|
DArray(java.lang.String n)
Constructs a new DArray with name n . |
Method Summary | |
void |
appendDim(int size)
Add a dimension to the array. |
void |
appendDim(int size,
java.lang.String name)
Given a size and a name, this function adds a dimension to the array. |
void |
checkSemantics(boolean all)
Checks for internal consistency. |
java.lang.Object |
clone()
Returns a clone of this DArray . |
DArrayDimension |
getDimension(int dimension)
Returns the DArrayDimension object for
the dimension requested. |
java.util.Enumeration |
getDimensions()
Returns an Enumeration of DArrayDimension s
in this array. |
DArrayDimension |
getFirstDimension()
Returns the DArrayDimension object for
the first dimension. |
java.lang.String |
getTypeName()
Returns the DODS type name of the class instance as a String . |
int |
numDimensions()
Returns the number of dimensions in this array. |
void |
printDecl(java.io.PrintWriter os,
java.lang.String space,
boolean print_semi,
boolean constrained)
Write the variable's declaration in a C-style syntax. |
void |
printVal(java.io.PrintWriter os,
java.lang.String space,
boolean print_decl_p)
Prints the value of the variable, with its declaration. |
Methods inherited from class dods.dap.DVector |
addVariable, deserialize, externalize, getLength, getPrimitiveVector, setLength |
Methods inherited from class dods.dap.BaseType |
checkSemantics, elementCount, elementCount, getLongName, getName, getParent, newPrimitiveVector, printDecl, printDecl, printDecl, printDecl, printDecl, printDecl, printDecl, printVal, printVal, printVal, setName, setParent |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public DArray()
DArray
.
public DArray(java.lang.String n)
DArray
with name n
.
n
- the name of the variable.Method Detail |
public java.lang.Object clone()
DArray
. A deep copy is performed
on all data inside the variable.
clone
in class DVector
DArray
.public java.lang.String getTypeName()
String
.
getTypeName
in class DVector
String
.public void checkSemantics(boolean all) throws BadSemanticsException
DArray
, verify that
the dimension vector is not empty.
checkSemantics
in class BaseType
all
- for complex constructor types, this flag indicates whether to
check the semantics of the member variables, too.
BadSemanticsException
- if semantics are bad, explains why.BaseType.checkSemantics(boolean)
public void printDecl(java.io.PrintWriter os, java.lang.String space, boolean print_semi, boolean constrained)
printDecl
in class DVector
os
- The PrintWriter
on which to print the
declaration.space
- Each line of the declaration will begin with the
characters in this string. Usually used for leading spaces.print_semi
- a boolean value indicating whether to print a
semicolon at the end of the declaration.BaseType.printDecl(PrintWriter, String, boolean)
public void printVal(java.io.PrintWriter os, java.lang.String space, boolean print_decl_p)
printVal
in class DVector
os
- the PrintWriter
on which to print the value.space
- this value is passed to the printDecl
method,
and controls the leading spaces of the output.print_decl_p
- a boolean value controlling whether the
variable declaration is printed as well as the value.BaseType.printVal(PrintWriter, String, boolean)
public void appendDim(int size, java.lang.String name)
DArray
is already 10 elements
long, calling appendDim
with a size of 5 will transform the
array into a 10x5 matrix. Calling it again with a size of 2 will
create a 10x5x2 array, and so on.
size
- the size of the desired new dimension.name
- the name of the new dimension.public void appendDim(int size)
appendDim(size, null)
.
size
- the size of the desired new dimension.appendDim(int, String)
public final java.util.Enumeration getDimensions()
Enumeration
of DArrayDimension
s
in this array.
Enumeration
of DArrayDimension
s
in this array.public final int numDimensions()
public DArrayDimension getDimension(int dimension) throws InvalidParameterException
DArrayDimension
object for
the dimension requested. It makes sure that the dimension requested
exists.
InvalidParameterException
public DArrayDimension getFirstDimension()
DArrayDimension
object for
the first dimension.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |