Package edu.sc.seis.seisFile.mseed
Class DataRecord
java.lang.Object
edu.sc.seis.seisFile.mseed.SeedRecord
edu.sc.seis.seisFile.mseed.DataRecord
- All Implemented Interfaces:
java.io.Serializable
public class DataRecord extends SeedRecord implements java.io.Serializable
- See Also:
- Serialized Form
-
Field Summary
Fields Modifier and Type Field Description protected byte[]
data
Fields inherited from class edu.sc.seis.seisFile.mseed.SeedRecord
blocketteFactory, blockettes, DEFAULT_INDENT, header, RECORD_SIZE
-
Constructor Summary
Constructors Constructor Description DataRecord(DataHeader header)
DataRecord(DataRecord record)
-
Method Summary
Modifier and Type Method Description void
addBlockette(Blockette b)
Adds a blockette to the record.edu.iris.dmc.seedcodec.DecompressedData
decompress()
Decompress the data in this record according to the compression type in the header.BtimeRange
getBtimeRange()
byte[]
getData()
returns the data from this data header unparsed, as a byte array in the format from blockette 1000.int
getDataSize()
java.lang.String
getEndTime()
get the value of end time.DataHeader
getHeader()
Btime
getLastSampleBtime()
return a Btime structure containing the derived last sample time for this record.java.lang.String
getLastSampleTime()
get the value of end time.Btime
getPredictedNextStartBtime()
returns the predicted start time of the next record, ie begin + numSample*period Note that this will use the more accurate sample rate in a blockette100 if it exists.float
getSampleRate()
Btime
getStartBtime()
Gets start Btime from header, convenience method.java.lang.String
getStartTime()
Gets start time from header, convenience method.boolean
isDecompressable()
java.lang.String
oneLineSummary()
static java.lang.String
oneLineSummaryKey()
void
printData(java.io.PrintWriter out)
static SeedRecord
readDataRecord(java.io.DataInput inStream, DataHeader header, int defaultRecordSize)
protected void
recheckDataOffset()
void
setData(byte[] data)
void
setRecordSize(int recordSize)
byte[]
toByteArray()
java.lang.String
toString()
void
write(java.io.DataOutputStream dos)
Methods inherited from class edu.sc.seis.seisFile.mseed.SeedRecord
getBlocketteFactory, getBlockettes, getBlockettes, getControlHeader, getFirstPartialBlockette, getLastPartialBlockette, getNumBlockettes, getRecordSize, getUniqueBlockette, read, read, read, setBlocketteFactory, writeASCII, writeASCII
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Field Details
-
data
protected byte[] data
-
-
Constructor Details
-
DataRecord
-
DataRecord
-
-
Method Details
-
addBlockette
Adds a blockette to the record. The number of blockettes in the header is incremented automatically.- Overrides:
addBlockette
in classSeedRecord
- Throws:
SeedFormatException
-
recheckDataOffset
- Throws:
SeedFormatException
-
getData
public byte[] getData()returns the data from this data header unparsed, as a byte array in the format from blockette 1000. The return type is byte[], so the caller must decode the data based on its format. -
isDecompressable
- Throws:
SeedFormatException
-
decompress
public edu.iris.dmc.seedcodec.DecompressedData decompress() throws SeedFormatException, edu.iris.dmc.seedcodec.UnsupportedCompressionType, edu.iris.dmc.seedcodec.CodecExceptionDecompress the data in this record according to the compression type in the header.- Returns:
- Throws:
SeedFormatException
- if no blockette 1000 presentedu.iris.dmc.seedcodec.UnsupportedCompressionType
edu.iris.dmc.seedcodec.CodecException
-
setData
- Throws:
SeedFormatException
-
getDataSize
public int getDataSize() -
getSampleRate
public float getSampleRate() -
getPredictedNextStartBtime
returns the predicted start time of the next record, ie begin + numSample*period Note that this will use the more accurate sample rate in a blockette100 if it exists. -
getBtimeRange
-
getLastSampleBtime
return a Btime structure containing the derived last sample time for this record. Note that this will use the more accurate sample rate in a blockette100 if it exists. -
getStartBtime
Gets start Btime from header, convenience method. -
getStartTime
public java.lang.String getStartTime()Gets start time from header, convenience method. -
getEndTime
public java.lang.String getEndTime()get the value of end time. derived from Start time, sample rate, and number of samples. Note this is not the time of the last sample, but rather the predicted begin time of the next record. Note that this will use the more accurate sample rate in a blockette100 if it exists.- Returns:
- the value of end time
-
getLastSampleTime
public java.lang.String getLastSampleTime()get the value of end time. derived from Start time, sample rate, and number of samples. Note that this will use the more accurate sample rate in a blockette100 if it exists.- Returns:
- the value of end time
-
getHeader
-
toByteArray
public byte[] toByteArray() -
write
public void write(java.io.DataOutputStream dos) throws java.io.IOException- Throws:
java.io.IOException
-
printData
public void printData(java.io.PrintWriter out) -
readDataRecord
public static SeedRecord readDataRecord(java.io.DataInput inStream, DataHeader header, int defaultRecordSize) throws java.io.IOException, SeedFormatException- Throws:
java.io.IOException
SeedFormatException
-
setRecordSize
- Throws:
SeedFormatException
-
oneLineSummaryKey
public static java.lang.String oneLineSummaryKey() -
oneLineSummary
public java.lang.String oneLineSummary() -
toString
public java.lang.String toString()- Overrides:
toString
in classSeedRecord
-