Class BufrDataInfo



  • public class BufrDataInfo
    extends java.lang.Object
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected static int[] BIT_MASK  
    • Constructor Summary

      Constructors 
      Constructor Description
      BufrDataInfo​()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void closeDataFile​()
      Close the data file created by previos step
      void createDataFile​(java.lang.String fileName)
      Create Bufr binary data file
      ucar.nc2.iosp.bufr.Message readFirstMessage​(java.lang.String fileName)
      Read first message
      void reWriteDataSectionHead​(int len)
      Write data section head
      void reWriteIndicatorSection​(int bufrLength, int edition)
      Write indicator section
      protected static void setBit​(int bit, byte[] bytes)  
      byte[] toByteArray​(java.util.BitSet bs)  
      int write​(int value, int nbits)
      Write a int value
      int write​(java.lang.String des, int value)
      Write a int value
      int write​(java.util.List<java.lang.Integer> values, java.util.List<java.lang.Integer> nbits)
      Write int values
      int writeDataDescriptionSection​(int ndatasets, int datatype, java.util.List<java.lang.String> descriptors)
      Write data description section
      int writeDataSectionHead​(int len)
      Write data section head
      int writeEndSection​()
      Write end section
      int writeIdentificationSection​(int len, int master_table, int subcenter_id, int center_id, int update_sequence, int optional, int category, int sub_category, int master_table_version, int local_table_version, int year, int month, int day, int hour, int minute)
      Write identification section
      int writeIndicatorSection​(int bufrLength, int edition)
      Write indicator section
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • BIT_MASK

        protected static int[] BIT_MASK
    • Constructor Detail

      • BufrDataInfo

        public BufrDataInfo​()
    • Method Detail

      • readFirstMessage

        public ucar.nc2.iosp.bufr.Message readFirstMessage​(java.lang.String fileName)
                                                    throws java.io.FileNotFoundException,
                                                           java.io.IOException
        Read first message
        Parameters:
        fileName - Bufr File Name
        Returns:
        First message
        Throws:
        java.io.FileNotFoundException
        java.io.IOException
      • createDataFile

        public void createDataFile​(java.lang.String fileName)
        Create Bufr binary data file
        Parameters:
        fileName - File name
      • closeDataFile

        public void closeDataFile​()
        Close the data file created by previos step
      • writeIndicatorSection

        public int writeIndicatorSection​(int bufrLength,
                                         int edition)
                                  throws java.io.IOException
        Write indicator section
        Parameters:
        bufrLength - The total length of the message
        edition - Bufr edition
        Returns:
        Indicator section length
        Throws:
        java.io.IOException
      • reWriteIndicatorSection

        public void reWriteIndicatorSection​(int bufrLength,
                                            int edition)
                                     throws java.io.IOException
        Write indicator section
        Parameters:
        bufrLength - The total length of the message
        edition - Bufr edition
        Throws:
        java.io.IOException
      • writeIdentificationSection

        public int writeIdentificationSection​(int len,
                                              int master_table,
                                              int subcenter_id,
                                              int center_id,
                                              int update_sequence,
                                              int optional,
                                              int category,
                                              int sub_category,
                                              int master_table_version,
                                              int local_table_version,
                                              int year,
                                              int month,
                                              int day,
                                              int hour,
                                              int minute)
                                       throws java.io.IOException
        Write identification section
        Parameters:
        len - Section length
        master_table - Master table
        subcenter_id - Subcenter id
        center_id - Center id
        update_sequence - Update sequency
        optional - Optional
        category - Category
        sub_category - Sub category
        master_table_version - Master table version
        local_table_version - Local table version
        year - Year
        month - Month
        day - Day
        hour - Hour
        minute - Minute
        Returns:
        Section length
        Throws:
        java.io.IOException
      • writeDataDescriptionSection

        public int writeDataDescriptionSection​(int ndatasets,
                                               int datatype,
                                               java.util.List<java.lang.String> descriptors)
                                        throws java.io.IOException
        Write data description section
        Parameters:
        ndatasets - Number of datasets
        datatype - Data type
        descriptors - Data descriptors
        Returns:
        Section length
        Throws:
        java.io.IOException
      • writeDataSectionHead

        public int writeDataSectionHead​(int len)
                                 throws java.io.IOException
        Write data section head
        Parameters:
        len - Length
        Returns:
        Data section head length
        Throws:
        java.io.IOException
      • reWriteDataSectionHead

        public void reWriteDataSectionHead​(int len)
                                    throws java.io.IOException
        Write data section head
        Parameters:
        len - Length
        Throws:
        java.io.IOException
      • write

        public int write​(int value,
                         int nbits)
                  throws java.io.IOException
        Write a int value
        Parameters:
        value - Value
        nbits - bit number
        Returns:
        Data length
        Throws:
        java.io.IOException
      • write

        public int write​(java.lang.String des,
                         int value)
                  throws java.io.IOException
        Write a int value
        Parameters:
        value - Value
        des - Data descriptor string
        Returns:
        Data length
        Throws:
        java.io.IOException
      • write

        public int write​(java.util.List<java.lang.Integer> values,
                         java.util.List<java.lang.Integer> nbits)
                  throws java.io.IOException
        Write int values
        Parameters:
        values - Values
        nbits - bit numbers
        Returns:
        Data length
        Throws:
        java.io.IOException
      • toByteArray

        public byte[] toByteArray​(java.util.BitSet bs)
      • setBit

        protected static void setBit​(int bit,
                                     byte[] bytes)
      • writeEndSection

        public int writeEndSection​()
                            throws java.io.IOException
        Write end section
        Returns:
        End section length
        Throws:
        java.io.IOException