-- This file is generated by tools/json2lua.js

local db = require('ffxiv_db')
local ffxiv_ipc_actor_gauge = Proto("ffxiv_ipc_actor_gauge", "FFXIV-IPC Actor Gauge")

local actor_gauge_fields = {
  class_job_id = ProtoField.uint8("ffxiv_ipc_actor_gauge.class_job_id", "classJobId", base.DEC, db.ClassJob),
  data0        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data0", "data0", base.DEC),
  data1        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data1", "data1", base.DEC),
  data2        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data2", "data2", base.DEC),
  data3        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data3", "data3", base.DEC),
  data4        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data4", "data4", base.DEC),
  data5        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data5", "data5", base.DEC),
  data6        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data6", "data6", base.DEC),
  data7        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data7", "data7", base.DEC),
  data8        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data8", "data8", base.DEC),
  data9        = ProtoField.uint8("ffxiv_ipc_actor_gauge.data9", "data9", base.DEC),
  data10       = ProtoField.uint8("ffxiv_ipc_actor_gauge.data10", "data10", base.DEC),
  data11       = ProtoField.uint8("ffxiv_ipc_actor_gauge.data11", "data11", base.DEC),
  data12       = ProtoField.uint8("ffxiv_ipc_actor_gauge.data12", "data12", base.DEC),
  data13       = ProtoField.uint8("ffxiv_ipc_actor_gauge.data13", "data13", base.DEC),
  data14       = ProtoField.uint8("ffxiv_ipc_actor_gauge.data14", "data14", base.DEC),
}

ffxiv_ipc_actor_gauge.fields = actor_gauge_fields

function ffxiv_ipc_actor_gauge.dissector(tvbuf, pktinfo, root)
  local tree = root:add(ffxiv_ipc_actor_gauge, tvbuf)
  pktinfo.cols.info:set("Actor Gauge")

  local len = tvbuf:len()

  -- dissect the class_job_id field
  local class_job_id_tvbr = tvbuf:range(0, 1)
  local class_job_id_val  = class_job_id_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.class_job_id, class_job_id_tvbr, class_job_id_val)

  -- dissect the data0 field
  local data0_tvbr = tvbuf:range(1, 1)
  local data0_val  = data0_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data0, data0_tvbr, data0_val)

  -- dissect the data1 field
  local data1_tvbr = tvbuf:range(2, 1)
  local data1_val  = data1_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data1, data1_tvbr, data1_val)

  -- dissect the data2 field
  local data2_tvbr = tvbuf:range(3, 1)
  local data2_val  = data2_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data2, data2_tvbr, data2_val)

  -- dissect the data3 field
  local data3_tvbr = tvbuf:range(4, 1)
  local data3_val  = data3_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data3, data3_tvbr, data3_val)

  -- dissect the data4 field
  local data4_tvbr = tvbuf:range(5, 1)
  local data4_val  = data4_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data4, data4_tvbr, data4_val)

  -- dissect the data5 field
  local data5_tvbr = tvbuf:range(6, 1)
  local data5_val  = data5_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data5, data5_tvbr, data5_val)

  -- dissect the data6 field
  local data6_tvbr = tvbuf:range(7, 1)
  local data6_val  = data6_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data6, data6_tvbr, data6_val)

  -- dissect the data7 field
  local data7_tvbr = tvbuf:range(8, 1)
  local data7_val  = data7_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data7, data7_tvbr, data7_val)

  -- dissect the data8 field
  local data8_tvbr = tvbuf:range(9, 1)
  local data8_val  = data8_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data8, data8_tvbr, data8_val)

  -- dissect the data9 field
  local data9_tvbr = tvbuf:range(10, 1)
  local data9_val  = data9_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data9, data9_tvbr, data9_val)

  -- dissect the data10 field
  local data10_tvbr = tvbuf:range(11, 1)
  local data10_val  = data10_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data10, data10_tvbr, data10_val)

  -- dissect the data11 field
  local data11_tvbr = tvbuf:range(12, 1)
  local data11_val  = data11_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data11, data11_tvbr, data11_val)

  -- dissect the data12 field
  local data12_tvbr = tvbuf:range(13, 1)
  local data12_val  = data12_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data12, data12_tvbr, data12_val)

  -- dissect the data13 field
  local data13_tvbr = tvbuf:range(14, 1)
  local data13_val  = data13_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data13, data13_tvbr, data13_val)

  -- dissect the data14 field
  local data14_tvbr = tvbuf:range(15, 1)
  local data14_val  = data14_tvbr:le_uint()
  tree:add_le(actor_gauge_fields.data14, data14_tvbr, data14_val)

  return len
end