hzc-666-ai/moonseis/miniseed3 does not have a README file

    ParseError

    pub(all) suberror ParseError {
    BadMagic
    BadVersion(Int)
    Truncated(Int)
    LengthMismatch(String)
    BadCrc(UInt, UInt)
    BadSampleRate(Double)
    BadSampleCount(String)
    BadSid(String)
    BadTime(String)
    UnsupportedEncoding(Int)
    MalformedExtraHeaders(String)
    }

    Errors produced while parsing a miniSEED 3 record.

    ParseError::to_string

    fn ParseError::to_string(self : ParseError) -> String

    FixedHeader

    pub(all) struct FixedHeader {
    version : Int
    flags : Int
    time_ns : UInt
    time_year : Int
    time_doy : Int
    time_hour : Int
    time_min : Int
    time_sec : Int
    encoding : Int
    sample_rate : Double
    sample_count : UInt
    crc : UInt
    publication_version : Int
    identifier_length : Int
    extra_headers_length : Int
    payload_length : UInt
    } derive(Eq,
    Debug
    )

    miniSEED 3 fixed record header (40 bytes, little-endian).

    FixedHeader::crc

    fn FixedHeader::crc(self : FixedHeader) -> UInt

    FixedHeader::encoding

    fn FixedHeader::encoding(self : FixedHeader) -> Int

    FixedHeader::extra_headers_length

    fn FixedHeader::extra_headers_length(self : FixedHeader) -> Int

    FixedHeader::flags

    fn FixedHeader::flags(self : FixedHeader) -> Int

    FixedHeader::identifier_length

    fn FixedHeader::identifier_length(self : FixedHeader) -> Int

    FixedHeader::payload_length

    fn FixedHeader::payload_length(self : FixedHeader) -> UInt

    FixedHeader::publication_version

    fn FixedHeader::publication_version(self : FixedHeader) -> Int

    FixedHeader::rate_hz

    fn FixedHeader::rate_hz(self : FixedHeader) -> Double

    Effective sample rate in hertz, or zero when unspecified.

    FixedHeader::sample_count

    fn FixedHeader::sample_count(self : FixedHeader) -> UInt

    FixedHeader::sample_rate

    fn FixedHeader::sample_rate(self : FixedHeader) -> Double

    FixedHeader::time_doy

    fn FixedHeader::time_doy(self : FixedHeader) -> Int

    FixedHeader::time_hour

    fn FixedHeader::time_hour(self : FixedHeader) -> Int

    FixedHeader::time_min

    fn FixedHeader::time_min(self : FixedHeader) -> Int

    FixedHeader::time_ns

    fn FixedHeader::time_ns(self : FixedHeader) -> UInt

    FixedHeader::time_sec

    fn FixedHeader::time_sec(self : FixedHeader) -> Int

    FixedHeader::time_year

    fn FixedHeader::time_year(self : FixedHeader) -> Int

    FixedHeader::version

    fn FixedHeader::version(self : FixedHeader) -> Int

    crc32c

    fn crc32c(data : Bytes) -> UInt

    crc32c_region

    fn crc32c_region(data : Bytes, start : Int, end : Int, crc_offset : Int) -> UInt

    CRC over data[start:end], treating the four CRC bytes as zero.

    fixed_header_size

    fn fixed_header_size() -> Int

    parse_header

    fn parse_header(raw : Bytes, off : Int) -> Result[FixedHeader, ParseError]

    Parse a fixed miniSEED 3 header at off.

    verify_crc

    fn verify_crc(raw : Bytes, start : Int, end : Int, crc_offset : Int) -> Bool