{"version":3,"file":"ReadPortWidth.mjs","names":[],"sources":["../../generated/api/ReadPortWidth.ts"],"sourcesContent":["import { decodeUIntLE, Packet, Request, Session } from '@novastar/codec';\nimport AddressMapping from '../AddressMapping';\n\ndeclare module '@novastar/codec' {\n  interface API {\n    ReadPortWidth(addr: number, index: number): Promise<number>;\n    tryReadPortWidth(addr: number, index: number): Promise<Packet | null>;\n  }\n}\nexport default function createReadPortWidth(addr: number, index: number): Request {\n  const req = new Request(AddressMapping.PortWidthOccupancy, 'ReadPortWidth');\n  req.destination = addr;\n  req.address = 0;\n  if (index >= AddressMapping.New32PortOccupancy) {\n    req.address =\n      AddressMapping.PortWidthNew32Addr +\n      AddressMapping.PortOccupancy * (index - AddressMapping.New32PortOccupancy);\n  } else if (index >= AddressMapping.New16PortOccupancy) {\n    req.address =\n      AddressMapping.PortWidthNew16Addr +\n      AddressMapping.PortOccupancy * (index - AddressMapping.New16PortOccupancy);\n  } else if (index >= AddressMapping.NewPortOccupancy) {\n    req.address =\n      AddressMapping.PortWidthNewAddr +\n      AddressMapping.PortOccupancy * (index - AddressMapping.NewPortOccupancy);\n  } else {\n    req.address = AddressMapping.PortWidthAddr + AddressMapping.PortOccupancy * index;\n  }\n  return req;\n}\nSession.prototype.ReadPortWidth = async function ReadPortWidth(\n  this: Session,\n  addr: number,\n  index: number\n): Promise<number> {\n  const req = createReadPortWidth(addr, index);\n  return decodeUIntLE(await this.connection.send(req));\n};\nSession.prototype.tryReadPortWidth = async function tryReadPortWidth(\n  this: Session,\n  addr: number,\n  index: number\n): Promise<Packet | null> {\n  const req = createReadPortWidth(addr, index);\n  return this.connection.trySend(req);\n};\n"],"mappings":";;;;AASA,SAAwB,oBAAoB,MAAc,OAAwB;CAChF,MAAM,MAAM,IAAI,WAA2C,eAAe;CAC1E,IAAI,cAAc;CAClB,IAAI,UAAU;CACd,IAAI,aACF,IAAI,0BAE8B;MAC7B,IAAI,YACT,IAAI,0BAE8B;MAC7B,IAAI,YACT,IAAI,0BAE8B;MAElC,IAAI,yBAAwE;CAE9E,OAAO;AACT;AACA,QAAQ,UAAU,gBAAgB,eAAe,cAE/C,MACA,OACiB;CACjB,MAAM,MAAM,oBAAoB,MAAM,KAAK;CAC3C,OAAO,aAAa,MAAM,KAAK,WAAW,KAAK,GAAG,CAAC;AACrD;AACA,QAAQ,UAAU,mBAAmB,eAAe,iBAElD,MACA,OACwB;CACxB,MAAM,MAAM,oBAAoB,MAAM,KAAK;CAC3C,OAAO,KAAK,WAAW,QAAQ,GAAG;AACpC"}