Package nom.tam.fits
Class RandomGroupsData
java.lang.Object
nom.tam.fits.Data
nom.tam.fits.RandomGroupsData
- All Implemented Interfaces:
FitsElement
Random Groups data. The use of random groups is discouraged, even by the FITS standard. Some old radio data may be
packaged in this format. Thus apart from provided limited support for reading such data, users should not create
random groups anew.
BinaryTable
offers a much more flexible and capable way for storing an ensemble of
parameters, arrays, and more.
Random groups are instantiated as a two-dimensional array of objects. The first dimension of the array is the number of groups. The second dimension is 2. The first object in every row is a one dimensional parameter array. The second element is the n-dimensional data array.
- See Also:
-
Constructor Summary
ConstructorDescriptionCreate the equivalent of a null data element.RandomGroupsData
(Object[][] x) Create a RandomGroupsData object using the specified object to initialize the data array. -
Method Summary
Modifier and TypeMethodDescriptionObject[][]
getData()
Returns the underlying Java representation of the data contained in this HDU's data segment.int[]
Returns the dimensions of the grouped dataClass<?>
Returns the Java class of the the parameter and data array elements.getImage
(int group) Returns the image component stored in the specified group.int
Returns the dimensions of the grouped parametersboolean
isEmpty()
Checks if the data content is currently empty, i.e. no actual data is currently stored in memory.toHDU()
Returns an approprotae HDU object that encapsulates this FITS data, and contains the minimal mandatory header description for that data.void
write
(ArrayDataOutput str) Writes the contents of the element to a data sink, adding padding as necessary if the element (such as a header or data segment) is expected to complete the FITS block of 2880 bytes.Methods inherited from class nom.tam.fits.Data
calcChecksum, detach, getFileOffset, getKernel, getSize, isDeferred, read, reset, rewrite, rewriteable
-
Constructor Details
-
RandomGroupsData
public RandomGroupsData()Create the equivalent of a null data element. -
RandomGroupsData
Create a RandomGroupsData object using the specified object to initialize the data array.- Parameters:
x
- The initial data array. This should a two-d array of objects as described above.- Throws:
IllegalArgumentException
- if the second array dimension is specified and it is not 2, or if the parameter arrya is not 1-dimensional, or if the parameter and data types differ.
-
-
Method Details
-
getElementType
Returns the Java class of the the parameter and data array elements.- Returns:
- The java class of the parameter and data elements.
- Since:
- 1.18
-
getParameterCount
public int getParameterCount()Returns the dimensions of the grouped parameters- Returns:
- The dimensions of the parameters or -1 if not defined.
- Since:
- 1.18
- See Also:
-
getDataDims
public int[] getDataDims()Returns the dimensions of the grouped data- Returns:
- The dimensions of the parameters, or
null
if not defined. - Since:
- 1.18
- See Also:
-
isEmpty
public boolean isEmpty()Description copied from class:Data
Checks if the data content is currently empty, i.e. no actual data is currently stored in memory.- Overrides:
isEmpty
in classData
- Returns:
true
if there is no actual data in memory, otherwisefalse
- See Also:
-
Data.isDeferred()
Data.getCurrentData()
-
getData
Description copied from class:Data
Returns the underlying Java representation of the data contained in this HDU's data segment. Typically it will return a Java array of some kind.- Overrides:
getData
in classData
- Returns:
- the underlying Java representation of the data core object, such as a multi-dimensional Java array.
- Throws:
FitsException
- if the data could not be gathered.- See Also:
-
Data.isDeferred()
Data.ensureData()
-
write
Description copied from interface:FitsElement
Writes the contents of the element to a data sink, adding padding as necessary if the element (such as a header or data segment) is expected to complete the FITS block of 2880 bytes.- Specified by:
write
in interfaceFitsElement
- Specified by:
write
in classData
- Parameters:
str
- The data sink.- Throws:
FitsException
- if the write was unsuccessful.
-
toHDU
Description copied from class:Data
Returns an approprotae HDU object that encapsulates this FITS data, and contains the minimal mandatory header description for that data.- Specified by:
toHDU
in classData
- Returns:
- a HDU object ocntaining the data and its minimal required header description
- Throws:
FitsException
- If the data cannot be converted to an HDU for some reason.
-
getImage
Returns the image component stored in the specified group.- Parameters:
group
- The zero-based group index- Returns:
- The image array for the specified group
- Throws:
ArrayIndexOutOfBoundsException
- if the group index is out of boundsFitsException
- if the deferred data could not be loaded.- Since:
- 1.19
- See Also:
-