description: >
    Monitor Post code coming and buffer all of them based on boot cycle into
    file system.

properties:
    - name: CurrentBootCycleCount
      type: uint16
      description: >
          It is used to indicate number of boot cycles that have post codes
          archived. It starts from 1 and is limited to MaxBootCycleNum.
    - name: MaxBootCycleNum
      type: uint16
      description: >
          The max cached boot cycles for post code. It is used to indicate end
          user what's the max boot number, and make sure get command parameter
          less than it.
methods:
    - name: GetPostCodesWithTimeStamp
      description: >
          Method to get the cached post codes of the indicated boot cycle with
          timestamp.
      parameters:
          - name: Index
            type: uint16
            description: >
                Index indicates which boot cycle of post codes is requested. 1
                is for the most recent boot cycle. CurrentBootCycleCount is for
                the oldest boot cycle.
      returns:
          - name: Codes
            type: dict[uint64, struct[uint64,array[byte]]]
            description: >
                An array of post codes and timestamp in microseconds since epoch
    - name: GetPostCodes
      description: >
          Method to get the cached post codes of the indicated boot cycle.
      parameters:
          - name: Index
            type: uint16
            description: >
                Index indicates which boot cycle of post codes is requested. 1
                is for the most recent boot cycle. CurrentBootCycleCount is for
                the oldest boot cycle.
      returns:
          - name: Codes
            type: array[struct[uint64,array[byte]]]
            description: >
                An array of post codes of one boot cycle.
