icb.go 749 B

1234567891011121314151617181920212223242526
  1. package udf
  2. type ICBTag struct {
  3. PriorRecordedNumberOfDirectEntries uint32
  4. StrategyType uint16
  5. StrategyParameter uint16
  6. MaximumNumberOfEntries uint16
  7. FileType uint8
  8. ParentICBLocation uint64
  9. Flags uint16
  10. }
  11. func (itag *ICBTag) FromBytes(b []byte) *ICBTag {
  12. itag.PriorRecordedNumberOfDirectEntries = rl_u32(b[0:])
  13. itag.StrategyType = rl_u16(b[4:])
  14. itag.StrategyParameter = rl_u16(b[4:])
  15. itag.MaximumNumberOfEntries = rl_u16(b[8:])
  16. itag.FileType = r_u8(b[1:])
  17. itag.ParentICBLocation = rl_u48(b[12:])
  18. itag.Flags = rl_u16(b[18:])
  19. return itag
  20. }
  21. func NewICBTag(b []byte) *ICBTag {
  22. return new(ICBTag).FromBytes(b)
  23. }