armnn-schema.js 123 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085
  1. export const armnnSerializer = {};
  2. armnnSerializer.ActivationFunction = {
  3. Sigmoid: 0, '0': 'Sigmoid',
  4. TanH: 1, '1': 'TanH',
  5. Linear: 2, '2': 'Linear',
  6. ReLu: 3, '3': 'ReLu',
  7. BoundedReLu: 4, '4': 'BoundedReLu',
  8. SoftReLu: 5, '5': 'SoftReLu',
  9. LeakyReLu: 6, '6': 'LeakyReLu',
  10. Abs: 7, '7': 'Abs',
  11. Sqrt: 8, '8': 'Sqrt',
  12. Square: 9, '9': 'Square',
  13. Elu: 10, '10': 'Elu',
  14. HardSwish: 11, '11': 'HardSwish',
  15. Gelu: 12, '12': 'Gelu'
  16. };
  17. armnnSerializer.ArgMinMaxFunction = {
  18. Min: 0, '0': 'Min',
  19. Max: 1, '1': 'Max'
  20. };
  21. armnnSerializer.DataType = {
  22. Float16: 0, '0': 'Float16',
  23. Float32: 1, '1': 'Float32',
  24. QuantisedAsymm8: 2, '2': 'QuantisedAsymm8',
  25. Signed32: 3, '3': 'Signed32',
  26. Boolean: 4, '4': 'Boolean',
  27. QuantisedSymm16: 5, '5': 'QuantisedSymm16',
  28. QAsymmU8: 6, '6': 'QAsymmU8',
  29. QSymmS16: 7, '7': 'QSymmS16',
  30. QAsymmS8: 8, '8': 'QAsymmS8',
  31. QSymmS8: 9, '9': 'QSymmS8',
  32. Signed64: 10, '10': 'Signed64'
  33. };
  34. armnnSerializer.DataLayout = {
  35. NHWC: 0, '0': 'NHWC',
  36. NCHW: 1, '1': 'NCHW',
  37. NDHWC: 2, '2': 'NDHWC',
  38. NCDHW: 3, '3': 'NCDHW'
  39. };
  40. armnnSerializer.ReduceOperation = {
  41. Sum: 0, '0': 'Sum',
  42. Max: 1, '1': 'Max',
  43. Mean: 2, '2': 'Mean',
  44. Min: 3, '3': 'Min',
  45. Prod: 4, '4': 'Prod'
  46. };
  47. armnnSerializer.ResizeMethod = {
  48. NearestNeighbor: 0, '0': 'NearestNeighbor',
  49. Bilinear: 1, '1': 'Bilinear'
  50. };
  51. armnnSerializer.ScatterNdFunction = {
  52. Update: 0, '0': 'Update',
  53. Add: 1, '1': 'Add',
  54. Sub: 2, '2': 'Sub',
  55. Max: 3, '3': 'Max',
  56. Min: 4, '4': 'Min'
  57. };
  58. armnnSerializer.TensorInfo = class TensorInfo {
  59. static decode(reader, position) {
  60. const $ = new armnnSerializer.TensorInfo();
  61. $.dimensions = reader.array(position, 4, Uint32Array);
  62. $.dataType = reader.int8_(position, 6, 0);
  63. $.quantizationScale = reader.float32_(position, 8, 1);
  64. $.quantizationOffset = reader.int32_(position, 10, 0);
  65. $.quantizationScales = reader.array(position, 12, Float32Array);
  66. $.quantizationDim = reader.uint32_(position, 14, 0);
  67. $.dimensionality = reader.uint32_(position, 16, 1);
  68. $.dimensionSpecificity = reader.bools_(position, 18);
  69. $.isConstant = reader.bool_(position, 20, false);
  70. return $;
  71. }
  72. static decodeText(reader, json) {
  73. const $ = new armnnSerializer.TensorInfo();
  74. $.dimensions = reader.array(json.dimensions, Uint32Array);
  75. $.dataType = armnnSerializer.DataType[json.dataType];
  76. $.quantizationScale = reader.value(json.quantizationScale, 1);
  77. $.quantizationOffset = reader.value(json.quantizationOffset, 0);
  78. $.quantizationScales = reader.array(json.quantizationScales, Float32Array);
  79. $.quantizationDim = reader.value(json.quantizationDim, 0);
  80. $.dimensionality = reader.value(json.dimensionality, 1);
  81. $.dimensionSpecificity = reader.array(json.dimensionSpecificity);
  82. $.isConstant = reader.value(json.isConstant, false);
  83. return $;
  84. }
  85. };
  86. armnnSerializer.Connection = class Connection {
  87. static decode(reader, position) {
  88. const $ = new armnnSerializer.Connection();
  89. $.sourceLayerIndex = reader.uint32(position + 0);
  90. $.outputSlotIndex = reader.uint32(position + 4);
  91. return $;
  92. }
  93. static decodeText(reader, json) {
  94. const $ = new armnnSerializer.Connection();
  95. $.sourceLayerIndex = json.sourceLayerIndex;
  96. $.outputSlotIndex = json.outputSlotIndex;
  97. return $;
  98. }
  99. };
  100. armnnSerializer.ByteData = class ByteData {
  101. static decode(reader, position) {
  102. const $ = new armnnSerializer.ByteData();
  103. $.data = reader.array(position, 4, Int8Array);
  104. return $;
  105. }
  106. static decodeText(reader, json) {
  107. const $ = new armnnSerializer.ByteData();
  108. $.data = reader.array(json.data, Int8Array);
  109. return $;
  110. }
  111. };
  112. armnnSerializer.ShortData = class ShortData {
  113. static decode(reader, position) {
  114. const $ = new armnnSerializer.ShortData();
  115. $.data = reader.array(position, 4, Int16Array);
  116. return $;
  117. }
  118. static decodeText(reader, json) {
  119. const $ = new armnnSerializer.ShortData();
  120. $.data = reader.array(json.data, Int16Array);
  121. return $;
  122. }
  123. };
  124. armnnSerializer.IntData = class IntData {
  125. static decode(reader, position) {
  126. const $ = new armnnSerializer.IntData();
  127. $.data = reader.array(position, 4, Int32Array);
  128. return $;
  129. }
  130. static decodeText(reader, json) {
  131. const $ = new armnnSerializer.IntData();
  132. $.data = reader.array(json.data, Int32Array);
  133. return $;
  134. }
  135. };
  136. armnnSerializer.LongData = class LongData {
  137. static decode(reader, position) {
  138. const $ = new armnnSerializer.LongData();
  139. $.data = reader.int64s_(position, 4);
  140. return $;
  141. }
  142. static decodeText(reader, json) {
  143. const $ = new armnnSerializer.LongData();
  144. $.data = reader.array(json.data);
  145. return $;
  146. }
  147. };
  148. armnnSerializer.ConstTensorData = class {
  149. static decode(reader, position, type) {
  150. switch (type) {
  151. case 1: return armnnSerializer.ByteData.decode(reader, position);
  152. case 2: return armnnSerializer.ShortData.decode(reader, position);
  153. case 3: return armnnSerializer.IntData.decode(reader, position);
  154. case 4: return armnnSerializer.LongData.decode(reader, position);
  155. default: return undefined;
  156. }
  157. }
  158. static decodeText(reader, json, type) {
  159. switch (type) {
  160. case 'ByteData': return armnnSerializer.ByteData.decodeText(reader, json);
  161. case 'ShortData': return armnnSerializer.ShortData.decodeText(reader, json);
  162. case 'IntData': return armnnSerializer.IntData.decodeText(reader, json);
  163. case 'LongData': return armnnSerializer.LongData.decodeText(reader, json);
  164. default: return undefined;
  165. }
  166. }
  167. };
  168. armnnSerializer.ConstTensor = class ConstTensor {
  169. static decode(reader, position) {
  170. const $ = new armnnSerializer.ConstTensor();
  171. $.info = reader.table(position, 4, armnnSerializer.TensorInfo);
  172. $.data = reader.union(position, 6, armnnSerializer.ConstTensorData);
  173. return $;
  174. }
  175. static decodeText(reader, json) {
  176. const $ = new armnnSerializer.ConstTensor();
  177. $.info = reader.object(json.info, armnnSerializer.TensorInfo);
  178. $.data = armnnSerializer.ConstTensorData.decodeText(reader, json.data, json.data_type);
  179. return $;
  180. }
  181. };
  182. armnnSerializer.InputSlot = class InputSlot {
  183. static decode(reader, position) {
  184. const $ = new armnnSerializer.InputSlot();
  185. $.index = reader.uint32_(position, 4, 0);
  186. $.connection = reader.struct(position, 6, armnnSerializer.Connection);
  187. $.isOverridden = reader.bool_(position, 8, false);
  188. $.overriddenTensorInfo = reader.table(position, 10, armnnSerializer.TensorInfo);
  189. return $;
  190. }
  191. static decodeText(reader, json) {
  192. const $ = new armnnSerializer.InputSlot();
  193. $.index = reader.value(json.index, 0);
  194. $.connection = reader.object(json.connection, armnnSerializer.Connection);
  195. $.isOverridden = reader.value(json.isOverridden, false);
  196. $.overriddenTensorInfo = reader.object(json.overriddenTensorInfo, armnnSerializer.TensorInfo);
  197. return $;
  198. }
  199. };
  200. armnnSerializer.OutputSlot = class OutputSlot {
  201. static decode(reader, position) {
  202. const $ = new armnnSerializer.OutputSlot();
  203. $.index = reader.uint32_(position, 4, 0);
  204. $.tensorInfo = reader.table(position, 6, armnnSerializer.TensorInfo);
  205. return $;
  206. }
  207. static decodeText(reader, json) {
  208. const $ = new armnnSerializer.OutputSlot();
  209. $.index = reader.value(json.index, 0);
  210. $.tensorInfo = reader.object(json.tensorInfo, armnnSerializer.TensorInfo);
  211. return $;
  212. }
  213. };
  214. armnnSerializer.LayerType = {
  215. Addition: 0, '0': 'Addition',
  216. Input: 1, '1': 'Input',
  217. Multiplication: 2, '2': 'Multiplication',
  218. Output: 3, '3': 'Output',
  219. Pooling2d: 4, '4': 'Pooling2d',
  220. Reshape: 5, '5': 'Reshape',
  221. Softmax: 6, '6': 'Softmax',
  222. Convolution2d: 7, '7': 'Convolution2d',
  223. DepthwiseConvolution2d: 8, '8': 'DepthwiseConvolution2d',
  224. Activation: 9, '9': 'Activation',
  225. Permute: 10, '10': 'Permute',
  226. FullyConnected: 11, '11': 'FullyConnected',
  227. Constant: 12, '12': 'Constant',
  228. SpaceToBatchNd: 13, '13': 'SpaceToBatchNd',
  229. BatchToSpaceNd: 14, '14': 'BatchToSpaceNd',
  230. Division: 15, '15': 'Division',
  231. Minimum: 16, '16': 'Minimum',
  232. Equal: 17, '17': 'Equal',
  233. Maximum: 18, '18': 'Maximum',
  234. Normalization: 19, '19': 'Normalization',
  235. Pad: 20, '20': 'Pad',
  236. Rsqrt: 21, '21': 'Rsqrt',
  237. Floor: 22, '22': 'Floor',
  238. BatchNormalization: 23, '23': 'BatchNormalization',
  239. Greater: 24, '24': 'Greater',
  240. ResizeBilinear: 25, '25': 'ResizeBilinear',
  241. Subtraction: 26, '26': 'Subtraction',
  242. StridedSlice: 27, '27': 'StridedSlice',
  243. Gather: 28, '28': 'Gather',
  244. Mean: 29, '29': 'Mean',
  245. Merger: 30, '30': 'Merger',
  246. L2Normalization: 31, '31': 'L2Normalization',
  247. Splitter: 32, '32': 'Splitter',
  248. DetectionPostProcess: 33, '33': 'DetectionPostProcess',
  249. Lstm: 34, '34': 'Lstm',
  250. Quantize: 35, '35': 'Quantize',
  251. Dequantize: 36, '36': 'Dequantize',
  252. Merge: 37, '37': 'Merge',
  253. Switch: 38, '38': 'Switch',
  254. Concat: 39, '39': 'Concat',
  255. SpaceToDepth: 40, '40': 'SpaceToDepth',
  256. Prelu: 41, '41': 'Prelu',
  257. TransposeConvolution2d: 42, '42': 'TransposeConvolution2d',
  258. Resize: 43, '43': 'Resize',
  259. Stack: 44, '44': 'Stack',
  260. QuantizedLstm: 45, '45': 'QuantizedLstm',
  261. Abs: 46, '46': 'Abs',
  262. ArgMinMax: 47, '47': 'ArgMinMax',
  263. Slice: 48, '48': 'Slice',
  264. DepthToSpace: 49, '49': 'DepthToSpace',
  265. InstanceNormalization: 50, '50': 'InstanceNormalization',
  266. LogSoftmax: 51, '51': 'LogSoftmax',
  267. Comparison: 52, '52': 'Comparison',
  268. StandIn: 53, '53': 'StandIn',
  269. ElementwiseUnary: 54, '54': 'ElementwiseUnary',
  270. Transpose: 55, '55': 'Transpose',
  271. QLstm: 56, '56': 'QLstm',
  272. Fill: 57, '57': 'Fill',
  273. Rank: 58, '58': 'Rank',
  274. LogicalBinary: 59, '59': 'LogicalBinary',
  275. Reduce: 60, '60': 'Reduce',
  276. Cast: 61, '61': 'Cast',
  277. Shape: 62, '62': 'Shape',
  278. UnidirectionalSequenceLstm: 63, '63': 'UnidirectionalSequenceLstm',
  279. ChannelShuffle: 64, '64': 'ChannelShuffle',
  280. Convolution3d: 65, '65': 'Convolution3d',
  281. Pooling3d: 66, '66': 'Pooling3d',
  282. GatherNd: 67, '67': 'GatherNd',
  283. BatchMatMul: 68, '68': 'BatchMatMul',
  284. ElementwiseBinary: 69, '69': 'ElementwiseBinary',
  285. ReverseV2: 70, '70': 'ReverseV2',
  286. Tile: 71, '71': 'Tile',
  287. ScatterNd: 72, '72': 'ScatterNd'
  288. };
  289. armnnSerializer.LayerBase = class LayerBase {
  290. static decode(reader, position) {
  291. const $ = new armnnSerializer.LayerBase();
  292. $.index = reader.uint32_(position, 4, 0);
  293. $.layerName = reader.string_(position, 6, null);
  294. $.layerType = reader.uint32_(position, 8, 0);
  295. $.inputSlots = reader.tables(position, 10, armnnSerializer.InputSlot);
  296. $.outputSlots = reader.tables(position, 12, armnnSerializer.OutputSlot);
  297. return $;
  298. }
  299. static decodeText(reader, json) {
  300. const $ = new armnnSerializer.LayerBase();
  301. $.index = reader.value(json.index, 0);
  302. $.layerName = reader.value(json.layerName, null);
  303. $.layerType = armnnSerializer.LayerType[json.layerType];
  304. $.inputSlots = reader.objects(json.inputSlots, armnnSerializer.InputSlot);
  305. $.outputSlots = reader.objects(json.outputSlots, armnnSerializer.OutputSlot);
  306. return $;
  307. }
  308. };
  309. armnnSerializer.BindableLayerBase = class BindableLayerBase {
  310. static decode(reader, position) {
  311. const $ = new armnnSerializer.BindableLayerBase();
  312. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  313. $.layerBindingId = reader.int32_(position, 6, 0);
  314. return $;
  315. }
  316. static decodeText(reader, json) {
  317. const $ = new armnnSerializer.BindableLayerBase();
  318. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  319. $.layerBindingId = reader.value(json.layerBindingId, 0);
  320. return $;
  321. }
  322. };
  323. armnnSerializer.AbsLayer = class AbsLayer {
  324. static decode(reader, position) {
  325. const $ = new armnnSerializer.AbsLayer();
  326. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  327. return $;
  328. }
  329. static decodeText(reader, json) {
  330. const $ = new armnnSerializer.AbsLayer();
  331. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  332. return $;
  333. }
  334. };
  335. armnnSerializer.ActivationLayer = class ActivationLayer {
  336. static decode(reader, position) {
  337. const $ = new armnnSerializer.ActivationLayer();
  338. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  339. $.descriptor = reader.table(position, 6, armnnSerializer.ActivationDescriptor);
  340. return $;
  341. }
  342. static decodeText(reader, json) {
  343. const $ = new armnnSerializer.ActivationLayer();
  344. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  345. $.descriptor = reader.object(json.descriptor, armnnSerializer.ActivationDescriptor);
  346. return $;
  347. }
  348. };
  349. armnnSerializer.ActivationDescriptor = class ActivationDescriptor {
  350. static decode(reader, position) {
  351. const $ = new armnnSerializer.ActivationDescriptor();
  352. $.activationFunction = reader.int8_(position, 4, 0);
  353. $.a = reader.float32_(position, 6, 0);
  354. $.b = reader.float32_(position, 8, 0);
  355. return $;
  356. }
  357. static decodeText(reader, json) {
  358. const $ = new armnnSerializer.ActivationDescriptor();
  359. $.activationFunction = armnnSerializer.ActivationFunction[json.activationFunction];
  360. $.a = reader.value(json.a, 0);
  361. $.b = reader.value(json.b, 0);
  362. return $;
  363. }
  364. };
  365. armnnSerializer.AdditionLayer = class AdditionLayer {
  366. static decode(reader, position) {
  367. const $ = new armnnSerializer.AdditionLayer();
  368. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  369. return $;
  370. }
  371. static decodeText(reader, json) {
  372. const $ = new armnnSerializer.AdditionLayer();
  373. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  374. return $;
  375. }
  376. };
  377. armnnSerializer.ArgMinMaxLayer = class ArgMinMaxLayer {
  378. static decode(reader, position) {
  379. const $ = new armnnSerializer.ArgMinMaxLayer();
  380. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  381. $.descriptor = reader.table(position, 6, armnnSerializer.ArgMinMaxDescriptor);
  382. return $;
  383. }
  384. static decodeText(reader, json) {
  385. const $ = new armnnSerializer.ArgMinMaxLayer();
  386. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  387. $.descriptor = reader.object(json.descriptor, armnnSerializer.ArgMinMaxDescriptor);
  388. return $;
  389. }
  390. };
  391. armnnSerializer.ArgMinMaxDescriptor = class ArgMinMaxDescriptor {
  392. static decode(reader, position) {
  393. const $ = new armnnSerializer.ArgMinMaxDescriptor();
  394. $.argMinMaxFunction = reader.int8_(position, 4, 0);
  395. $.axis = reader.int32_(position, 6, 0);
  396. return $;
  397. }
  398. static decodeText(reader, json) {
  399. const $ = new armnnSerializer.ArgMinMaxDescriptor();
  400. $.argMinMaxFunction = armnnSerializer.ArgMinMaxFunction[json.argMinMaxFunction];
  401. $.axis = reader.value(json.axis, 0);
  402. return $;
  403. }
  404. };
  405. armnnSerializer.CastLayer = class CastLayer {
  406. static decode(reader, position) {
  407. const $ = new armnnSerializer.CastLayer();
  408. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  409. return $;
  410. }
  411. static decodeText(reader, json) {
  412. const $ = new armnnSerializer.CastLayer();
  413. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  414. return $;
  415. }
  416. };
  417. armnnSerializer.ChannelShuffleLayer = class ChannelShuffleLayer {
  418. static decode(reader, position) {
  419. const $ = new armnnSerializer.ChannelShuffleLayer();
  420. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  421. $.descriptor = reader.table(position, 6, armnnSerializer.ChannelShuffleDescriptor);
  422. return $;
  423. }
  424. static decodeText(reader, json) {
  425. const $ = new armnnSerializer.ChannelShuffleLayer();
  426. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  427. $.descriptor = reader.object(json.descriptor, armnnSerializer.ChannelShuffleDescriptor);
  428. return $;
  429. }
  430. };
  431. armnnSerializer.ChannelShuffleDescriptor = class ChannelShuffleDescriptor {
  432. static decode(reader, position) {
  433. const $ = new armnnSerializer.ChannelShuffleDescriptor();
  434. $.axis = reader.uint32_(position, 4, 0);
  435. $.numGroups = reader.uint32_(position, 6, 0);
  436. return $;
  437. }
  438. static decodeText(reader, json) {
  439. const $ = new armnnSerializer.ChannelShuffleDescriptor();
  440. $.axis = reader.value(json.axis, 0);
  441. $.numGroups = reader.value(json.numGroups, 0);
  442. return $;
  443. }
  444. };
  445. armnnSerializer.ComparisonOperation = {
  446. Equal: 0, '0': 'Equal',
  447. Greater: 1, '1': 'Greater',
  448. GreaterOrEqual: 2, '2': 'GreaterOrEqual',
  449. Less: 3, '3': 'Less',
  450. LessOrEqual: 4, '4': 'LessOrEqual',
  451. NotEqual: 5, '5': 'NotEqual'
  452. };
  453. armnnSerializer.ComparisonDescriptor = class ComparisonDescriptor {
  454. static decode(reader, position) {
  455. const $ = new armnnSerializer.ComparisonDescriptor();
  456. $.operation = reader.int8_(position, 4, 0);
  457. return $;
  458. }
  459. static decodeText(reader, json) {
  460. const $ = new armnnSerializer.ComparisonDescriptor();
  461. $.operation = armnnSerializer.ComparisonOperation[json.operation];
  462. return $;
  463. }
  464. };
  465. armnnSerializer.ComparisonLayer = class ComparisonLayer {
  466. static decode(reader, position) {
  467. const $ = new armnnSerializer.ComparisonLayer();
  468. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  469. $.descriptor = reader.table(position, 6, armnnSerializer.ComparisonDescriptor);
  470. return $;
  471. }
  472. static decodeText(reader, json) {
  473. const $ = new armnnSerializer.ComparisonLayer();
  474. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  475. $.descriptor = reader.object(json.descriptor, armnnSerializer.ComparisonDescriptor);
  476. return $;
  477. }
  478. };
  479. armnnSerializer.ConstantLayer = class ConstantLayer {
  480. static decode(reader, position) {
  481. const $ = new armnnSerializer.ConstantLayer();
  482. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  483. $.input = reader.table(position, 6, armnnSerializer.ConstTensor);
  484. return $;
  485. }
  486. static decodeText(reader, json) {
  487. const $ = new armnnSerializer.ConstantLayer();
  488. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  489. $.input = reader.object(json.input, armnnSerializer.ConstTensor);
  490. return $;
  491. }
  492. };
  493. armnnSerializer.Convolution2dLayer = class Convolution2dLayer {
  494. static decode(reader, position) {
  495. const $ = new armnnSerializer.Convolution2dLayer();
  496. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  497. $.descriptor = reader.table(position, 6, armnnSerializer.Convolution2dDescriptor);
  498. $.weights = reader.table(position, 8, armnnSerializer.ConstTensor);
  499. $.biases = reader.table(position, 10, armnnSerializer.ConstTensor);
  500. return $;
  501. }
  502. static decodeText(reader, json) {
  503. const $ = new armnnSerializer.Convolution2dLayer();
  504. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  505. $.descriptor = reader.object(json.descriptor, armnnSerializer.Convolution2dDescriptor);
  506. $.weights = reader.object(json.weights, armnnSerializer.ConstTensor);
  507. $.biases = reader.object(json.biases, armnnSerializer.ConstTensor);
  508. return $;
  509. }
  510. };
  511. armnnSerializer.Convolution2dDescriptor = class Convolution2dDescriptor {
  512. static decode(reader, position) {
  513. const $ = new armnnSerializer.Convolution2dDescriptor();
  514. $.padLeft = reader.uint32_(position, 4, 0);
  515. $.padRight = reader.uint32_(position, 6, 0);
  516. $.padTop = reader.uint32_(position, 8, 0);
  517. $.padBottom = reader.uint32_(position, 10, 0);
  518. $.strideX = reader.uint32_(position, 12, 0);
  519. $.strideY = reader.uint32_(position, 14, 0);
  520. $.dilationX = reader.uint32_(position, 16, 1);
  521. $.dilationY = reader.uint32_(position, 18, 1);
  522. $.biasEnabled = reader.bool_(position, 20, false);
  523. $.dataLayout = reader.int8_(position, 22, 1);
  524. return $;
  525. }
  526. static decodeText(reader, json) {
  527. const $ = new armnnSerializer.Convolution2dDescriptor();
  528. $.padLeft = reader.value(json.padLeft, 0);
  529. $.padRight = reader.value(json.padRight, 0);
  530. $.padTop = reader.value(json.padTop, 0);
  531. $.padBottom = reader.value(json.padBottom, 0);
  532. $.strideX = reader.value(json.strideX, 0);
  533. $.strideY = reader.value(json.strideY, 0);
  534. $.dilationX = reader.value(json.dilationX, 1);
  535. $.dilationY = reader.value(json.dilationY, 1);
  536. $.biasEnabled = reader.value(json.biasEnabled, false);
  537. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  538. return $;
  539. }
  540. };
  541. armnnSerializer.Convolution3dLayer = class Convolution3dLayer {
  542. static decode(reader, position) {
  543. const $ = new armnnSerializer.Convolution3dLayer();
  544. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  545. $.descriptor = reader.table(position, 6, armnnSerializer.Convolution3dDescriptor);
  546. return $;
  547. }
  548. static decodeText(reader, json) {
  549. const $ = new armnnSerializer.Convolution3dLayer();
  550. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  551. $.descriptor = reader.object(json.descriptor, armnnSerializer.Convolution3dDescriptor);
  552. return $;
  553. }
  554. };
  555. armnnSerializer.Convolution3dDescriptor = class Convolution3dDescriptor {
  556. static decode(reader, position) {
  557. const $ = new armnnSerializer.Convolution3dDescriptor();
  558. $.padLeft = reader.uint32_(position, 4, 0);
  559. $.padRight = reader.uint32_(position, 6, 0);
  560. $.padTop = reader.uint32_(position, 8, 0);
  561. $.padBottom = reader.uint32_(position, 10, 0);
  562. $.padFront = reader.uint32_(position, 12, 0);
  563. $.padBack = reader.uint32_(position, 14, 0);
  564. $.strideX = reader.uint32_(position, 16, 0);
  565. $.strideY = reader.uint32_(position, 18, 0);
  566. $.strideZ = reader.uint32_(position, 20, 0);
  567. $.dilationX = reader.uint32_(position, 22, 1);
  568. $.dilationY = reader.uint32_(position, 24, 1);
  569. $.dilationZ = reader.uint32_(position, 26, 1);
  570. $.biasEnabled = reader.bool_(position, 28, false);
  571. $.dataLayout = reader.int8_(position, 30, 2);
  572. return $;
  573. }
  574. static decodeText(reader, json) {
  575. const $ = new armnnSerializer.Convolution3dDescriptor();
  576. $.padLeft = reader.value(json.padLeft, 0);
  577. $.padRight = reader.value(json.padRight, 0);
  578. $.padTop = reader.value(json.padTop, 0);
  579. $.padBottom = reader.value(json.padBottom, 0);
  580. $.padFront = reader.value(json.padFront, 0);
  581. $.padBack = reader.value(json.padBack, 0);
  582. $.strideX = reader.value(json.strideX, 0);
  583. $.strideY = reader.value(json.strideY, 0);
  584. $.strideZ = reader.value(json.strideZ, 0);
  585. $.dilationX = reader.value(json.dilationX, 1);
  586. $.dilationY = reader.value(json.dilationY, 1);
  587. $.dilationZ = reader.value(json.dilationZ, 1);
  588. $.biasEnabled = reader.value(json.biasEnabled, false);
  589. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  590. return $;
  591. }
  592. };
  593. armnnSerializer.DepthToSpaceLayer = class DepthToSpaceLayer {
  594. static decode(reader, position) {
  595. const $ = new armnnSerializer.DepthToSpaceLayer();
  596. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  597. $.descriptor = reader.table(position, 6, armnnSerializer.DepthToSpaceDescriptor);
  598. return $;
  599. }
  600. static decodeText(reader, json) {
  601. const $ = new armnnSerializer.DepthToSpaceLayer();
  602. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  603. $.descriptor = reader.object(json.descriptor, armnnSerializer.DepthToSpaceDescriptor);
  604. return $;
  605. }
  606. };
  607. armnnSerializer.DepthToSpaceDescriptor = class DepthToSpaceDescriptor {
  608. static decode(reader, position) {
  609. const $ = new armnnSerializer.DepthToSpaceDescriptor();
  610. $.blockSize = reader.uint32_(position, 4, 0);
  611. $.dataLayout = reader.int8_(position, 6, 0);
  612. return $;
  613. }
  614. static decodeText(reader, json) {
  615. const $ = new armnnSerializer.DepthToSpaceDescriptor();
  616. $.blockSize = reader.value(json.blockSize, 0);
  617. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  618. return $;
  619. }
  620. };
  621. armnnSerializer.DivisionLayer = class DivisionLayer {
  622. static decode(reader, position) {
  623. const $ = new armnnSerializer.DivisionLayer();
  624. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  625. return $;
  626. }
  627. static decodeText(reader, json) {
  628. const $ = new armnnSerializer.DivisionLayer();
  629. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  630. return $;
  631. }
  632. };
  633. armnnSerializer.BinaryOperation = {
  634. Add: 0, '0': 'Add',
  635. Div: 1, '1': 'Div',
  636. Maximum: 2, '2': 'Maximum',
  637. Minimum: 3, '3': 'Minimum',
  638. Mul: 4, '4': 'Mul',
  639. Sub: 5, '5': 'Sub',
  640. SqDiff: 6, '6': 'SqDiff',
  641. Power: 7, '7': 'Power',
  642. FloorDiv: 8, '8': 'FloorDiv'
  643. };
  644. armnnSerializer.ElementwiseBinaryDescriptor = class ElementwiseBinaryDescriptor {
  645. static decode(reader, position) {
  646. const $ = new armnnSerializer.ElementwiseBinaryDescriptor();
  647. $.operation = reader.int8_(position, 4, 0);
  648. return $;
  649. }
  650. static decodeText(reader, json) {
  651. const $ = new armnnSerializer.ElementwiseBinaryDescriptor();
  652. $.operation = armnnSerializer.BinaryOperation[json.operation];
  653. return $;
  654. }
  655. };
  656. armnnSerializer.ElementwiseBinaryLayer = class ElementwiseBinaryLayer {
  657. static decode(reader, position) {
  658. const $ = new armnnSerializer.ElementwiseBinaryLayer();
  659. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  660. $.descriptor = reader.table(position, 6, armnnSerializer.ElementwiseBinaryDescriptor);
  661. return $;
  662. }
  663. static decodeText(reader, json) {
  664. const $ = new armnnSerializer.ElementwiseBinaryLayer();
  665. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  666. $.descriptor = reader.object(json.descriptor, armnnSerializer.ElementwiseBinaryDescriptor);
  667. return $;
  668. }
  669. };
  670. armnnSerializer.UnaryOperation = {
  671. Abs: 0, '0': 'Abs',
  672. Rsqrt: 1, '1': 'Rsqrt',
  673. Sqrt: 2, '2': 'Sqrt',
  674. Exp: 3, '3': 'Exp',
  675. Neg: 4, '4': 'Neg',
  676. LogicalNot: 5, '5': 'LogicalNot',
  677. Log: 6, '6': 'Log',
  678. Sin: 7, '7': 'Sin',
  679. Ceil: 8, '8': 'Ceil'
  680. };
  681. armnnSerializer.ElementwiseUnaryDescriptor = class ElementwiseUnaryDescriptor {
  682. static decode(reader, position) {
  683. const $ = new armnnSerializer.ElementwiseUnaryDescriptor();
  684. $.operation = reader.int8_(position, 4, 0);
  685. return $;
  686. }
  687. static decodeText(reader, json) {
  688. const $ = new armnnSerializer.ElementwiseUnaryDescriptor();
  689. $.operation = armnnSerializer.UnaryOperation[json.operation];
  690. return $;
  691. }
  692. };
  693. armnnSerializer.ElementwiseUnaryLayer = class ElementwiseUnaryLayer {
  694. static decode(reader, position) {
  695. const $ = new armnnSerializer.ElementwiseUnaryLayer();
  696. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  697. $.descriptor = reader.table(position, 6, armnnSerializer.ElementwiseUnaryDescriptor);
  698. return $;
  699. }
  700. static decodeText(reader, json) {
  701. const $ = new armnnSerializer.ElementwiseUnaryLayer();
  702. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  703. $.descriptor = reader.object(json.descriptor, armnnSerializer.ElementwiseUnaryDescriptor);
  704. return $;
  705. }
  706. };
  707. armnnSerializer.EqualLayer = class EqualLayer {
  708. static decode(reader, position) {
  709. const $ = new armnnSerializer.EqualLayer();
  710. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  711. return $;
  712. }
  713. static decodeText(reader, json) {
  714. const $ = new armnnSerializer.EqualLayer();
  715. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  716. return $;
  717. }
  718. };
  719. armnnSerializer.FillLayer = class FillLayer {
  720. static decode(reader, position) {
  721. const $ = new armnnSerializer.FillLayer();
  722. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  723. $.descriptor = reader.table(position, 6, armnnSerializer.FillDescriptor);
  724. return $;
  725. }
  726. static decodeText(reader, json) {
  727. const $ = new armnnSerializer.FillLayer();
  728. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  729. $.descriptor = reader.object(json.descriptor, armnnSerializer.FillDescriptor);
  730. return $;
  731. }
  732. };
  733. armnnSerializer.FillDescriptor = class FillDescriptor {
  734. static decode(reader, position) {
  735. const $ = new armnnSerializer.FillDescriptor();
  736. $.value = reader.float32_(position, 4, 0);
  737. return $;
  738. }
  739. static decodeText(reader, json) {
  740. const $ = new armnnSerializer.FillDescriptor();
  741. $.value = reader.value(json.value, 0);
  742. return $;
  743. }
  744. };
  745. armnnSerializer.FloorLayer = class FloorLayer {
  746. static decode(reader, position) {
  747. const $ = new armnnSerializer.FloorLayer();
  748. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  749. return $;
  750. }
  751. static decodeText(reader, json) {
  752. const $ = new armnnSerializer.FloorLayer();
  753. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  754. return $;
  755. }
  756. };
  757. armnnSerializer.FullyConnectedLayer = class FullyConnectedLayer {
  758. static decode(reader, position) {
  759. const $ = new armnnSerializer.FullyConnectedLayer();
  760. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  761. $.descriptor = reader.table(position, 6, armnnSerializer.FullyConnectedDescriptor);
  762. $.weights = reader.table(position, 8, armnnSerializer.ConstTensor);
  763. $.biases = reader.table(position, 10, armnnSerializer.ConstTensor);
  764. return $;
  765. }
  766. static decodeText(reader, json) {
  767. const $ = new armnnSerializer.FullyConnectedLayer();
  768. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  769. $.descriptor = reader.object(json.descriptor, armnnSerializer.FullyConnectedDescriptor);
  770. $.weights = reader.object(json.weights, armnnSerializer.ConstTensor);
  771. $.biases = reader.object(json.biases, armnnSerializer.ConstTensor);
  772. return $;
  773. }
  774. };
  775. armnnSerializer.FullyConnectedDescriptor = class FullyConnectedDescriptor {
  776. static decode(reader, position) {
  777. const $ = new armnnSerializer.FullyConnectedDescriptor();
  778. $.biasEnabled = reader.bool_(position, 4, false);
  779. $.transposeWeightsMatrix = reader.bool_(position, 6, false);
  780. $.constantWeights = reader.bool_(position, 8, true);
  781. return $;
  782. }
  783. static decodeText(reader, json) {
  784. const $ = new armnnSerializer.FullyConnectedDescriptor();
  785. $.biasEnabled = reader.value(json.biasEnabled, false);
  786. $.transposeWeightsMatrix = reader.value(json.transposeWeightsMatrix, false);
  787. $.constantWeights = reader.value(json.constantWeights, true);
  788. return $;
  789. }
  790. };
  791. armnnSerializer.GatherLayer = class GatherLayer {
  792. static decode(reader, position) {
  793. const $ = new armnnSerializer.GatherLayer();
  794. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  795. $.descriptor = reader.table(position, 6, armnnSerializer.GatherDescriptor);
  796. return $;
  797. }
  798. static decodeText(reader, json) {
  799. const $ = new armnnSerializer.GatherLayer();
  800. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  801. $.descriptor = reader.object(json.descriptor, armnnSerializer.GatherDescriptor);
  802. return $;
  803. }
  804. };
  805. armnnSerializer.GatherDescriptor = class GatherDescriptor {
  806. static decode(reader, position) {
  807. const $ = new armnnSerializer.GatherDescriptor();
  808. $.axis = reader.int32_(position, 4, 0);
  809. return $;
  810. }
  811. static decodeText(reader, json) {
  812. const $ = new armnnSerializer.GatherDescriptor();
  813. $.axis = reader.value(json.axis, 0);
  814. return $;
  815. }
  816. };
  817. armnnSerializer.GatherNdLayer = class GatherNdLayer {
  818. static decode(reader, position) {
  819. const $ = new armnnSerializer.GatherNdLayer();
  820. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  821. return $;
  822. }
  823. static decodeText(reader, json) {
  824. const $ = new armnnSerializer.GatherNdLayer();
  825. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  826. return $;
  827. }
  828. };
  829. armnnSerializer.GreaterLayer = class GreaterLayer {
  830. static decode(reader, position) {
  831. const $ = new armnnSerializer.GreaterLayer();
  832. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  833. return $;
  834. }
  835. static decodeText(reader, json) {
  836. const $ = new armnnSerializer.GreaterLayer();
  837. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  838. return $;
  839. }
  840. };
  841. armnnSerializer.InputLayer = class InputLayer {
  842. static decode(reader, position) {
  843. const $ = new armnnSerializer.InputLayer();
  844. $.base = reader.table(position, 4, armnnSerializer.BindableLayerBase);
  845. return $;
  846. }
  847. static decodeText(reader, json) {
  848. const $ = new armnnSerializer.InputLayer();
  849. $.base = reader.object(json.base, armnnSerializer.BindableLayerBase);
  850. return $;
  851. }
  852. };
  853. armnnSerializer.InstanceNormalizationLayer = class InstanceNormalizationLayer {
  854. static decode(reader, position) {
  855. const $ = new armnnSerializer.InstanceNormalizationLayer();
  856. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  857. $.descriptor = reader.table(position, 6, armnnSerializer.InstanceNormalizationDescriptor);
  858. return $;
  859. }
  860. static decodeText(reader, json) {
  861. const $ = new armnnSerializer.InstanceNormalizationLayer();
  862. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  863. $.descriptor = reader.object(json.descriptor, armnnSerializer.InstanceNormalizationDescriptor);
  864. return $;
  865. }
  866. };
  867. armnnSerializer.InstanceNormalizationDescriptor = class InstanceNormalizationDescriptor {
  868. static decode(reader, position) {
  869. const $ = new armnnSerializer.InstanceNormalizationDescriptor();
  870. $.gamma = reader.float32_(position, 4, 0);
  871. $.beta = reader.float32_(position, 6, 0);
  872. $.eps = reader.float32_(position, 8, 0);
  873. $.dataLayout = reader.int8_(position, 10, 0);
  874. return $;
  875. }
  876. static decodeText(reader, json) {
  877. const $ = new armnnSerializer.InstanceNormalizationDescriptor();
  878. $.gamma = reader.value(json.gamma, 0);
  879. $.beta = reader.value(json.beta, 0);
  880. $.eps = reader.value(json.eps, 0);
  881. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  882. return $;
  883. }
  884. };
  885. armnnSerializer.LogSoftmaxLayer = class LogSoftmaxLayer {
  886. static decode(reader, position) {
  887. const $ = new armnnSerializer.LogSoftmaxLayer();
  888. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  889. $.descriptor = reader.table(position, 6, armnnSerializer.LogSoftmaxDescriptor);
  890. return $;
  891. }
  892. static decodeText(reader, json) {
  893. const $ = new armnnSerializer.LogSoftmaxLayer();
  894. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  895. $.descriptor = reader.object(json.descriptor, armnnSerializer.LogSoftmaxDescriptor);
  896. return $;
  897. }
  898. };
  899. armnnSerializer.LogSoftmaxDescriptor = class LogSoftmaxDescriptor {
  900. static decode(reader, position) {
  901. const $ = new armnnSerializer.LogSoftmaxDescriptor();
  902. $.beta = reader.float32_(position, 4, 1);
  903. $.axis = reader.int32_(position, 6, -1);
  904. return $;
  905. }
  906. static decodeText(reader, json) {
  907. const $ = new armnnSerializer.LogSoftmaxDescriptor();
  908. $.beta = reader.value(json.beta, 1);
  909. $.axis = reader.value(json.axis, -1);
  910. return $;
  911. }
  912. };
  913. armnnSerializer.L2NormalizationLayer = class L2NormalizationLayer {
  914. static decode(reader, position) {
  915. const $ = new armnnSerializer.L2NormalizationLayer();
  916. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  917. $.descriptor = reader.table(position, 6, armnnSerializer.L2NormalizationDescriptor);
  918. return $;
  919. }
  920. static decodeText(reader, json) {
  921. const $ = new armnnSerializer.L2NormalizationLayer();
  922. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  923. $.descriptor = reader.object(json.descriptor, armnnSerializer.L2NormalizationDescriptor);
  924. return $;
  925. }
  926. };
  927. armnnSerializer.L2NormalizationDescriptor = class L2NormalizationDescriptor {
  928. static decode(reader, position) {
  929. const $ = new armnnSerializer.L2NormalizationDescriptor();
  930. $.dataLayout = reader.int8_(position, 4, 1);
  931. $.eps = reader.float32_(position, 6, 1e-12);
  932. return $;
  933. }
  934. static decodeText(reader, json) {
  935. const $ = new armnnSerializer.L2NormalizationDescriptor();
  936. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  937. $.eps = reader.value(json.eps, 1e-12);
  938. return $;
  939. }
  940. };
  941. armnnSerializer.LogicalBinaryOperation = {
  942. LogicalAnd: 0, '0': 'LogicalAnd',
  943. LogicalOr: 1, '1': 'LogicalOr'
  944. };
  945. armnnSerializer.LogicalBinaryDescriptor = class LogicalBinaryDescriptor {
  946. static decode(reader, position) {
  947. const $ = new armnnSerializer.LogicalBinaryDescriptor();
  948. $.operation = reader.int8_(position, 4, 0);
  949. return $;
  950. }
  951. static decodeText(reader, json) {
  952. const $ = new armnnSerializer.LogicalBinaryDescriptor();
  953. $.operation = armnnSerializer.LogicalBinaryOperation[json.operation];
  954. return $;
  955. }
  956. };
  957. armnnSerializer.LogicalBinaryLayer = class LogicalBinaryLayer {
  958. static decode(reader, position) {
  959. const $ = new armnnSerializer.LogicalBinaryLayer();
  960. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  961. $.descriptor = reader.table(position, 6, armnnSerializer.LogicalBinaryDescriptor);
  962. return $;
  963. }
  964. static decodeText(reader, json) {
  965. const $ = new armnnSerializer.LogicalBinaryLayer();
  966. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  967. $.descriptor = reader.object(json.descriptor, armnnSerializer.LogicalBinaryDescriptor);
  968. return $;
  969. }
  970. };
  971. armnnSerializer.MinimumLayer = class MinimumLayer {
  972. static decode(reader, position) {
  973. const $ = new armnnSerializer.MinimumLayer();
  974. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  975. return $;
  976. }
  977. static decodeText(reader, json) {
  978. const $ = new armnnSerializer.MinimumLayer();
  979. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  980. return $;
  981. }
  982. };
  983. armnnSerializer.MaximumLayer = class MaximumLayer {
  984. static decode(reader, position) {
  985. const $ = new armnnSerializer.MaximumLayer();
  986. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  987. return $;
  988. }
  989. static decodeText(reader, json) {
  990. const $ = new armnnSerializer.MaximumLayer();
  991. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  992. return $;
  993. }
  994. };
  995. armnnSerializer.MultiplicationLayer = class MultiplicationLayer {
  996. static decode(reader, position) {
  997. const $ = new armnnSerializer.MultiplicationLayer();
  998. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  999. return $;
  1000. }
  1001. static decodeText(reader, json) {
  1002. const $ = new armnnSerializer.MultiplicationLayer();
  1003. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1004. return $;
  1005. }
  1006. };
  1007. armnnSerializer.Pooling2dLayer = class Pooling2dLayer {
  1008. static decode(reader, position) {
  1009. const $ = new armnnSerializer.Pooling2dLayer();
  1010. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1011. $.descriptor = reader.table(position, 6, armnnSerializer.Pooling2dDescriptor);
  1012. return $;
  1013. }
  1014. static decodeText(reader, json) {
  1015. const $ = new armnnSerializer.Pooling2dLayer();
  1016. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1017. $.descriptor = reader.object(json.descriptor, armnnSerializer.Pooling2dDescriptor);
  1018. return $;
  1019. }
  1020. };
  1021. armnnSerializer.Pooling3dLayer = class Pooling3dLayer {
  1022. static decode(reader, position) {
  1023. const $ = new armnnSerializer.Pooling3dLayer();
  1024. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1025. $.descriptor = reader.table(position, 6, armnnSerializer.Pooling3dDescriptor);
  1026. return $;
  1027. }
  1028. static decodeText(reader, json) {
  1029. const $ = new armnnSerializer.Pooling3dLayer();
  1030. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1031. $.descriptor = reader.object(json.descriptor, armnnSerializer.Pooling3dDescriptor);
  1032. return $;
  1033. }
  1034. };
  1035. armnnSerializer.PoolingAlgorithm = {
  1036. Max: 0, '0': 'Max',
  1037. Average: 1, '1': 'Average',
  1038. L2: 2, '2': 'L2'
  1039. };
  1040. armnnSerializer.OutputShapeRounding = {
  1041. Floor: 0, '0': 'Floor',
  1042. Ceiling: 1, '1': 'Ceiling'
  1043. };
  1044. armnnSerializer.PaddingMethod = {
  1045. IgnoreValue: 0, '0': 'IgnoreValue',
  1046. Exclude: 1, '1': 'Exclude'
  1047. };
  1048. armnnSerializer.Pooling2dDescriptor = class Pooling2dDescriptor {
  1049. static decode(reader, position) {
  1050. const $ = new armnnSerializer.Pooling2dDescriptor();
  1051. $.poolType = reader.int8_(position, 4, 0);
  1052. $.padLeft = reader.uint32_(position, 6, 0);
  1053. $.padRight = reader.uint32_(position, 8, 0);
  1054. $.padTop = reader.uint32_(position, 10, 0);
  1055. $.padBottom = reader.uint32_(position, 12, 0);
  1056. $.poolWidth = reader.uint32_(position, 14, 0);
  1057. $.poolHeight = reader.uint32_(position, 16, 0);
  1058. $.strideX = reader.uint32_(position, 18, 0);
  1059. $.strideY = reader.uint32_(position, 20, 0);
  1060. $.outputShapeRounding = reader.int8_(position, 22, 0);
  1061. $.paddingMethod = reader.int8_(position, 24, 0);
  1062. $.dataLayout = reader.int8_(position, 26, 0);
  1063. return $;
  1064. }
  1065. static decodeText(reader, json) {
  1066. const $ = new armnnSerializer.Pooling2dDescriptor();
  1067. $.poolType = armnnSerializer.PoolingAlgorithm[json.poolType];
  1068. $.padLeft = reader.value(json.padLeft, 0);
  1069. $.padRight = reader.value(json.padRight, 0);
  1070. $.padTop = reader.value(json.padTop, 0);
  1071. $.padBottom = reader.value(json.padBottom, 0);
  1072. $.poolWidth = reader.value(json.poolWidth, 0);
  1073. $.poolHeight = reader.value(json.poolHeight, 0);
  1074. $.strideX = reader.value(json.strideX, 0);
  1075. $.strideY = reader.value(json.strideY, 0);
  1076. $.outputShapeRounding = armnnSerializer.OutputShapeRounding[json.outputShapeRounding];
  1077. $.paddingMethod = armnnSerializer.PaddingMethod[json.paddingMethod];
  1078. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1079. return $;
  1080. }
  1081. };
  1082. armnnSerializer.Pooling3dDescriptor = class Pooling3dDescriptor {
  1083. static decode(reader, position) {
  1084. const $ = new armnnSerializer.Pooling3dDescriptor();
  1085. $.poolType = reader.int8_(position, 4, 0);
  1086. $.padLeft = reader.uint32_(position, 6, 0);
  1087. $.padRight = reader.uint32_(position, 8, 0);
  1088. $.padTop = reader.uint32_(position, 10, 0);
  1089. $.padBottom = reader.uint32_(position, 12, 0);
  1090. $.padFront = reader.uint32_(position, 14, 0);
  1091. $.padBack = reader.uint32_(position, 16, 0);
  1092. $.poolWidth = reader.uint32_(position, 18, 0);
  1093. $.poolHeight = reader.uint32_(position, 20, 0);
  1094. $.poolDepth = reader.uint32_(position, 22, 0);
  1095. $.strideX = reader.uint32_(position, 24, 0);
  1096. $.strideY = reader.uint32_(position, 26, 0);
  1097. $.strideZ = reader.uint32_(position, 28, 0);
  1098. $.outputShapeRounding = reader.int8_(position, 30, 0);
  1099. $.paddingMethod = reader.int8_(position, 32, 0);
  1100. $.dataLayout = reader.int8_(position, 34, 0);
  1101. return $;
  1102. }
  1103. static decodeText(reader, json) {
  1104. const $ = new armnnSerializer.Pooling3dDescriptor();
  1105. $.poolType = armnnSerializer.PoolingAlgorithm[json.poolType];
  1106. $.padLeft = reader.value(json.padLeft, 0);
  1107. $.padRight = reader.value(json.padRight, 0);
  1108. $.padTop = reader.value(json.padTop, 0);
  1109. $.padBottom = reader.value(json.padBottom, 0);
  1110. $.padFront = reader.value(json.padFront, 0);
  1111. $.padBack = reader.value(json.padBack, 0);
  1112. $.poolWidth = reader.value(json.poolWidth, 0);
  1113. $.poolHeight = reader.value(json.poolHeight, 0);
  1114. $.poolDepth = reader.value(json.poolDepth, 0);
  1115. $.strideX = reader.value(json.strideX, 0);
  1116. $.strideY = reader.value(json.strideY, 0);
  1117. $.strideZ = reader.value(json.strideZ, 0);
  1118. $.outputShapeRounding = armnnSerializer.OutputShapeRounding[json.outputShapeRounding];
  1119. $.paddingMethod = armnnSerializer.PaddingMethod[json.paddingMethod];
  1120. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1121. return $;
  1122. }
  1123. };
  1124. armnnSerializer.QuantizeLayer = class QuantizeLayer {
  1125. static decode(reader, position) {
  1126. const $ = new armnnSerializer.QuantizeLayer();
  1127. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1128. return $;
  1129. }
  1130. static decodeText(reader, json) {
  1131. const $ = new armnnSerializer.QuantizeLayer();
  1132. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1133. return $;
  1134. }
  1135. };
  1136. armnnSerializer.SoftmaxLayer = class SoftmaxLayer {
  1137. static decode(reader, position) {
  1138. const $ = new armnnSerializer.SoftmaxLayer();
  1139. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1140. $.descriptor = reader.table(position, 6, armnnSerializer.SoftmaxDescriptor);
  1141. return $;
  1142. }
  1143. static decodeText(reader, json) {
  1144. const $ = new armnnSerializer.SoftmaxLayer();
  1145. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1146. $.descriptor = reader.object(json.descriptor, armnnSerializer.SoftmaxDescriptor);
  1147. return $;
  1148. }
  1149. };
  1150. armnnSerializer.SoftmaxDescriptor = class SoftmaxDescriptor {
  1151. static decode(reader, position) {
  1152. const $ = new armnnSerializer.SoftmaxDescriptor();
  1153. $.beta = reader.float32_(position, 4, 0);
  1154. $.axis = reader.int32_(position, 6, -1);
  1155. return $;
  1156. }
  1157. static decodeText(reader, json) {
  1158. const $ = new armnnSerializer.SoftmaxDescriptor();
  1159. $.beta = reader.value(json.beta, 0);
  1160. $.axis = reader.value(json.axis, -1);
  1161. return $;
  1162. }
  1163. };
  1164. armnnSerializer.DepthwiseConvolution2dLayer = class DepthwiseConvolution2dLayer {
  1165. static decode(reader, position) {
  1166. const $ = new armnnSerializer.DepthwiseConvolution2dLayer();
  1167. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1168. $.descriptor = reader.table(position, 6, armnnSerializer.DepthwiseConvolution2dDescriptor);
  1169. $.weights = reader.table(position, 8, armnnSerializer.ConstTensor);
  1170. $.biases = reader.table(position, 10, armnnSerializer.ConstTensor);
  1171. return $;
  1172. }
  1173. static decodeText(reader, json) {
  1174. const $ = new armnnSerializer.DepthwiseConvolution2dLayer();
  1175. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1176. $.descriptor = reader.object(json.descriptor, armnnSerializer.DepthwiseConvolution2dDescriptor);
  1177. $.weights = reader.object(json.weights, armnnSerializer.ConstTensor);
  1178. $.biases = reader.object(json.biases, armnnSerializer.ConstTensor);
  1179. return $;
  1180. }
  1181. };
  1182. armnnSerializer.DepthwiseConvolution2dDescriptor = class DepthwiseConvolution2dDescriptor {
  1183. static decode(reader, position) {
  1184. const $ = new armnnSerializer.DepthwiseConvolution2dDescriptor();
  1185. $.padLeft = reader.uint32_(position, 4, 0);
  1186. $.padRight = reader.uint32_(position, 6, 0);
  1187. $.padTop = reader.uint32_(position, 8, 0);
  1188. $.padBottom = reader.uint32_(position, 10, 0);
  1189. $.strideX = reader.uint32_(position, 12, 0);
  1190. $.strideY = reader.uint32_(position, 14, 0);
  1191. $.dilationX = reader.uint32_(position, 16, 1);
  1192. $.dilationY = reader.uint32_(position, 18, 1);
  1193. $.biasEnabled = reader.bool_(position, 20, false);
  1194. $.dataLayout = reader.int8_(position, 22, 1);
  1195. return $;
  1196. }
  1197. static decodeText(reader, json) {
  1198. const $ = new armnnSerializer.DepthwiseConvolution2dDescriptor();
  1199. $.padLeft = reader.value(json.padLeft, 0);
  1200. $.padRight = reader.value(json.padRight, 0);
  1201. $.padTop = reader.value(json.padTop, 0);
  1202. $.padBottom = reader.value(json.padBottom, 0);
  1203. $.strideX = reader.value(json.strideX, 0);
  1204. $.strideY = reader.value(json.strideY, 0);
  1205. $.dilationX = reader.value(json.dilationX, 1);
  1206. $.dilationY = reader.value(json.dilationY, 1);
  1207. $.biasEnabled = reader.value(json.biasEnabled, false);
  1208. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1209. return $;
  1210. }
  1211. };
  1212. armnnSerializer.OutputLayer = class OutputLayer {
  1213. static decode(reader, position) {
  1214. const $ = new armnnSerializer.OutputLayer();
  1215. $.base = reader.table(position, 4, armnnSerializer.BindableLayerBase);
  1216. return $;
  1217. }
  1218. static decodeText(reader, json) {
  1219. const $ = new armnnSerializer.OutputLayer();
  1220. $.base = reader.object(json.base, armnnSerializer.BindableLayerBase);
  1221. return $;
  1222. }
  1223. };
  1224. armnnSerializer.ReshapeLayer = class ReshapeLayer {
  1225. static decode(reader, position) {
  1226. const $ = new armnnSerializer.ReshapeLayer();
  1227. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1228. $.descriptor = reader.table(position, 6, armnnSerializer.ReshapeDescriptor);
  1229. return $;
  1230. }
  1231. static decodeText(reader, json) {
  1232. const $ = new armnnSerializer.ReshapeLayer();
  1233. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1234. $.descriptor = reader.object(json.descriptor, armnnSerializer.ReshapeDescriptor);
  1235. return $;
  1236. }
  1237. };
  1238. armnnSerializer.ReshapeDescriptor = class ReshapeDescriptor {
  1239. static decode(reader, position) {
  1240. const $ = new armnnSerializer.ReshapeDescriptor();
  1241. $.targetShape = reader.array(position, 4, Uint32Array);
  1242. return $;
  1243. }
  1244. static decodeText(reader, json) {
  1245. const $ = new armnnSerializer.ReshapeDescriptor();
  1246. $.targetShape = reader.array(json.targetShape, Uint32Array);
  1247. return $;
  1248. }
  1249. };
  1250. armnnSerializer.PermuteLayer = class PermuteLayer {
  1251. static decode(reader, position) {
  1252. const $ = new armnnSerializer.PermuteLayer();
  1253. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1254. $.descriptor = reader.table(position, 6, armnnSerializer.PermuteDescriptor);
  1255. return $;
  1256. }
  1257. static decodeText(reader, json) {
  1258. const $ = new armnnSerializer.PermuteLayer();
  1259. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1260. $.descriptor = reader.object(json.descriptor, armnnSerializer.PermuteDescriptor);
  1261. return $;
  1262. }
  1263. };
  1264. armnnSerializer.PermuteDescriptor = class PermuteDescriptor {
  1265. static decode(reader, position) {
  1266. const $ = new armnnSerializer.PermuteDescriptor();
  1267. $.dimMappings = reader.array(position, 4, Uint32Array);
  1268. return $;
  1269. }
  1270. static decodeText(reader, json) {
  1271. const $ = new armnnSerializer.PermuteDescriptor();
  1272. $.dimMappings = reader.array(json.dimMappings, Uint32Array);
  1273. return $;
  1274. }
  1275. };
  1276. armnnSerializer.ShapeLayer = class ShapeLayer {
  1277. static decode(reader, position) {
  1278. const $ = new armnnSerializer.ShapeLayer();
  1279. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1280. return $;
  1281. }
  1282. static decodeText(reader, json) {
  1283. const $ = new armnnSerializer.ShapeLayer();
  1284. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1285. return $;
  1286. }
  1287. };
  1288. armnnSerializer.SpaceToBatchNdLayer = class SpaceToBatchNdLayer {
  1289. static decode(reader, position) {
  1290. const $ = new armnnSerializer.SpaceToBatchNdLayer();
  1291. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1292. $.descriptor = reader.table(position, 6, armnnSerializer.SpaceToBatchNdDescriptor);
  1293. return $;
  1294. }
  1295. static decodeText(reader, json) {
  1296. const $ = new armnnSerializer.SpaceToBatchNdLayer();
  1297. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1298. $.descriptor = reader.object(json.descriptor, armnnSerializer.SpaceToBatchNdDescriptor);
  1299. return $;
  1300. }
  1301. };
  1302. armnnSerializer.SpaceToBatchNdDescriptor = class SpaceToBatchNdDescriptor {
  1303. static decode(reader, position) {
  1304. const $ = new armnnSerializer.SpaceToBatchNdDescriptor();
  1305. $.blockShape = reader.array(position, 4, Uint32Array);
  1306. $.padList = reader.array(position, 6, Uint32Array);
  1307. $.dataLayout = reader.int8_(position, 8, 0);
  1308. return $;
  1309. }
  1310. static decodeText(reader, json) {
  1311. const $ = new armnnSerializer.SpaceToBatchNdDescriptor();
  1312. $.blockShape = reader.array(json.blockShape, Uint32Array);
  1313. $.padList = reader.array(json.padList, Uint32Array);
  1314. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1315. return $;
  1316. }
  1317. };
  1318. armnnSerializer.SpaceToDepthLayer = class SpaceToDepthLayer {
  1319. static decode(reader, position) {
  1320. const $ = new armnnSerializer.SpaceToDepthLayer();
  1321. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1322. $.descriptor = reader.table(position, 6, armnnSerializer.SpaceToDepthDescriptor);
  1323. return $;
  1324. }
  1325. static decodeText(reader, json) {
  1326. const $ = new armnnSerializer.SpaceToDepthLayer();
  1327. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1328. $.descriptor = reader.object(json.descriptor, armnnSerializer.SpaceToDepthDescriptor);
  1329. return $;
  1330. }
  1331. };
  1332. armnnSerializer.SpaceToDepthDescriptor = class SpaceToDepthDescriptor {
  1333. static decode(reader, position) {
  1334. const $ = new armnnSerializer.SpaceToDepthDescriptor();
  1335. $.blockSize = reader.uint32_(position, 4, 0);
  1336. $.dataLayout = reader.int8_(position, 6, 0);
  1337. return $;
  1338. }
  1339. static decodeText(reader, json) {
  1340. const $ = new armnnSerializer.SpaceToDepthDescriptor();
  1341. $.blockSize = reader.value(json.blockSize, 0);
  1342. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1343. return $;
  1344. }
  1345. };
  1346. armnnSerializer.SubtractionLayer = class SubtractionLayer {
  1347. static decode(reader, position) {
  1348. const $ = new armnnSerializer.SubtractionLayer();
  1349. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1350. return $;
  1351. }
  1352. static decodeText(reader, json) {
  1353. const $ = new armnnSerializer.SubtractionLayer();
  1354. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1355. return $;
  1356. }
  1357. };
  1358. armnnSerializer.BatchToSpaceNdLayer = class BatchToSpaceNdLayer {
  1359. static decode(reader, position) {
  1360. const $ = new armnnSerializer.BatchToSpaceNdLayer();
  1361. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1362. $.descriptor = reader.table(position, 6, armnnSerializer.BatchToSpaceNdDescriptor);
  1363. return $;
  1364. }
  1365. static decodeText(reader, json) {
  1366. const $ = new armnnSerializer.BatchToSpaceNdLayer();
  1367. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1368. $.descriptor = reader.object(json.descriptor, armnnSerializer.BatchToSpaceNdDescriptor);
  1369. return $;
  1370. }
  1371. };
  1372. armnnSerializer.BatchToSpaceNdDescriptor = class BatchToSpaceNdDescriptor {
  1373. static decode(reader, position) {
  1374. const $ = new armnnSerializer.BatchToSpaceNdDescriptor();
  1375. $.blockShape = reader.array(position, 4, Uint32Array);
  1376. $.crops = reader.array(position, 6, Uint32Array);
  1377. $.dataLayout = reader.int8_(position, 8, 0);
  1378. return $;
  1379. }
  1380. static decodeText(reader, json) {
  1381. const $ = new armnnSerializer.BatchToSpaceNdDescriptor();
  1382. $.blockShape = reader.array(json.blockShape, Uint32Array);
  1383. $.crops = reader.array(json.crops, Uint32Array);
  1384. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1385. return $;
  1386. }
  1387. };
  1388. armnnSerializer.NormalizationAlgorithmChannel = {
  1389. Across: 0, '0': 'Across',
  1390. Within: 1, '1': 'Within'
  1391. };
  1392. armnnSerializer.NormalizationAlgorithmMethod = {
  1393. LocalBrightness: 0, '0': 'LocalBrightness',
  1394. LocalContrast: 1, '1': 'LocalContrast'
  1395. };
  1396. armnnSerializer.NormalizationLayer = class NormalizationLayer {
  1397. static decode(reader, position) {
  1398. const $ = new armnnSerializer.NormalizationLayer();
  1399. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1400. $.descriptor = reader.table(position, 6, armnnSerializer.NormalizationDescriptor);
  1401. return $;
  1402. }
  1403. static decodeText(reader, json) {
  1404. const $ = new armnnSerializer.NormalizationLayer();
  1405. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1406. $.descriptor = reader.object(json.descriptor, armnnSerializer.NormalizationDescriptor);
  1407. return $;
  1408. }
  1409. };
  1410. armnnSerializer.NormalizationDescriptor = class NormalizationDescriptor {
  1411. static decode(reader, position) {
  1412. const $ = new armnnSerializer.NormalizationDescriptor();
  1413. $.normChannelType = reader.int8_(position, 4, 0);
  1414. $.normMethodType = reader.int8_(position, 6, 0);
  1415. $.normSize = reader.uint32_(position, 8, 0);
  1416. $.alpha = reader.float32_(position, 10, 0);
  1417. $.beta = reader.float32_(position, 12, 0);
  1418. $.k = reader.float32_(position, 14, 0);
  1419. $.dataLayout = reader.int8_(position, 16, 1);
  1420. return $;
  1421. }
  1422. static decodeText(reader, json) {
  1423. const $ = new armnnSerializer.NormalizationDescriptor();
  1424. $.normChannelType = armnnSerializer.NormalizationAlgorithmChannel[json.normChannelType];
  1425. $.normMethodType = armnnSerializer.NormalizationAlgorithmMethod[json.normMethodType];
  1426. $.normSize = reader.value(json.normSize, 0);
  1427. $.alpha = reader.value(json.alpha, 0);
  1428. $.beta = reader.value(json.beta, 0);
  1429. $.k = reader.value(json.k, 0);
  1430. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1431. return $;
  1432. }
  1433. };
  1434. armnnSerializer.MeanLayer = class MeanLayer {
  1435. static decode(reader, position) {
  1436. const $ = new armnnSerializer.MeanLayer();
  1437. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1438. $.descriptor = reader.table(position, 6, armnnSerializer.MeanDescriptor);
  1439. return $;
  1440. }
  1441. static decodeText(reader, json) {
  1442. const $ = new armnnSerializer.MeanLayer();
  1443. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1444. $.descriptor = reader.object(json.descriptor, armnnSerializer.MeanDescriptor);
  1445. return $;
  1446. }
  1447. };
  1448. armnnSerializer.MeanDescriptor = class MeanDescriptor {
  1449. static decode(reader, position) {
  1450. const $ = new armnnSerializer.MeanDescriptor();
  1451. $.axis = reader.array(position, 4, Uint32Array);
  1452. $.keepDims = reader.bool_(position, 6, false);
  1453. return $;
  1454. }
  1455. static decodeText(reader, json) {
  1456. const $ = new armnnSerializer.MeanDescriptor();
  1457. $.axis = reader.array(json.axis, Uint32Array);
  1458. $.keepDims = reader.value(json.keepDims, false);
  1459. return $;
  1460. }
  1461. };
  1462. armnnSerializer.PadLayer = class PadLayer {
  1463. static decode(reader, position) {
  1464. const $ = new armnnSerializer.PadLayer();
  1465. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1466. $.descriptor = reader.table(position, 6, armnnSerializer.PadDescriptor);
  1467. return $;
  1468. }
  1469. static decodeText(reader, json) {
  1470. const $ = new armnnSerializer.PadLayer();
  1471. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1472. $.descriptor = reader.object(json.descriptor, armnnSerializer.PadDescriptor);
  1473. return $;
  1474. }
  1475. };
  1476. armnnSerializer.PaddingMode = {
  1477. Constant: 0, '0': 'Constant',
  1478. Reflect: 1, '1': 'Reflect',
  1479. Symmetric: 2, '2': 'Symmetric'
  1480. };
  1481. armnnSerializer.PadDescriptor = class PadDescriptor {
  1482. static decode(reader, position) {
  1483. const $ = new armnnSerializer.PadDescriptor();
  1484. $.padList = reader.array(position, 4, Uint32Array);
  1485. $.padValue = reader.float32_(position, 6, 0);
  1486. $.paddingMode = reader.int8_(position, 8, 0);
  1487. return $;
  1488. }
  1489. static decodeText(reader, json) {
  1490. const $ = new armnnSerializer.PadDescriptor();
  1491. $.padList = reader.array(json.padList, Uint32Array);
  1492. $.padValue = reader.value(json.padValue, 0);
  1493. $.paddingMode = armnnSerializer.PaddingMode[json.paddingMode];
  1494. return $;
  1495. }
  1496. };
  1497. armnnSerializer.RsqrtLayer = class RsqrtLayer {
  1498. static decode(reader, position) {
  1499. const $ = new armnnSerializer.RsqrtLayer();
  1500. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1501. return $;
  1502. }
  1503. static decodeText(reader, json) {
  1504. const $ = new armnnSerializer.RsqrtLayer();
  1505. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1506. return $;
  1507. }
  1508. };
  1509. armnnSerializer.BatchNormalizationLayer = class BatchNormalizationLayer {
  1510. static decode(reader, position) {
  1511. const $ = new armnnSerializer.BatchNormalizationLayer();
  1512. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1513. $.descriptor = reader.table(position, 6, armnnSerializer.BatchNormalizationDescriptor);
  1514. $.mean = reader.table(position, 8, armnnSerializer.ConstTensor);
  1515. $.variance = reader.table(position, 10, armnnSerializer.ConstTensor);
  1516. $.beta = reader.table(position, 12, armnnSerializer.ConstTensor);
  1517. $.gamma = reader.table(position, 14, armnnSerializer.ConstTensor);
  1518. return $;
  1519. }
  1520. static decodeText(reader, json) {
  1521. const $ = new armnnSerializer.BatchNormalizationLayer();
  1522. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1523. $.descriptor = reader.object(json.descriptor, armnnSerializer.BatchNormalizationDescriptor);
  1524. $.mean = reader.object(json.mean, armnnSerializer.ConstTensor);
  1525. $.variance = reader.object(json.variance, armnnSerializer.ConstTensor);
  1526. $.beta = reader.object(json.beta, armnnSerializer.ConstTensor);
  1527. $.gamma = reader.object(json.gamma, armnnSerializer.ConstTensor);
  1528. return $;
  1529. }
  1530. };
  1531. armnnSerializer.BatchNormalizationDescriptor = class BatchNormalizationDescriptor {
  1532. static decode(reader, position) {
  1533. const $ = new armnnSerializer.BatchNormalizationDescriptor();
  1534. $.eps = reader.float32_(position, 4, 0);
  1535. $.dataLayout = reader.int8_(position, 6, 0);
  1536. return $;
  1537. }
  1538. static decodeText(reader, json) {
  1539. const $ = new armnnSerializer.BatchNormalizationDescriptor();
  1540. $.eps = reader.value(json.eps, 0);
  1541. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1542. return $;
  1543. }
  1544. };
  1545. armnnSerializer.ResizeBilinearLayer = class ResizeBilinearLayer {
  1546. static decode(reader, position) {
  1547. const $ = new armnnSerializer.ResizeBilinearLayer();
  1548. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1549. $.descriptor = reader.table(position, 6, armnnSerializer.ResizeBilinearDescriptor);
  1550. return $;
  1551. }
  1552. static decodeText(reader, json) {
  1553. const $ = new armnnSerializer.ResizeBilinearLayer();
  1554. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1555. $.descriptor = reader.object(json.descriptor, armnnSerializer.ResizeBilinearDescriptor);
  1556. return $;
  1557. }
  1558. };
  1559. armnnSerializer.ResizeBilinearDescriptor = class ResizeBilinearDescriptor {
  1560. static decode(reader, position) {
  1561. const $ = new armnnSerializer.ResizeBilinearDescriptor();
  1562. $.targetWidth = reader.uint32_(position, 4, 0);
  1563. $.targetHeight = reader.uint32_(position, 6, 0);
  1564. $.dataLayout = reader.int8_(position, 8, 0);
  1565. $.alignCorners = reader.bool_(position, 10, false);
  1566. $.halfPixelCenters = reader.bool_(position, 12, false);
  1567. return $;
  1568. }
  1569. static decodeText(reader, json) {
  1570. const $ = new armnnSerializer.ResizeBilinearDescriptor();
  1571. $.targetWidth = reader.value(json.targetWidth, 0);
  1572. $.targetHeight = reader.value(json.targetHeight, 0);
  1573. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1574. $.alignCorners = reader.value(json.alignCorners, false);
  1575. $.halfPixelCenters = reader.value(json.halfPixelCenters, false);
  1576. return $;
  1577. }
  1578. };
  1579. armnnSerializer.SliceLayer = class SliceLayer {
  1580. static decode(reader, position) {
  1581. const $ = new armnnSerializer.SliceLayer();
  1582. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1583. $.descriptor = reader.table(position, 6, armnnSerializer.SliceDescriptor);
  1584. return $;
  1585. }
  1586. static decodeText(reader, json) {
  1587. const $ = new armnnSerializer.SliceLayer();
  1588. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1589. $.descriptor = reader.object(json.descriptor, armnnSerializer.SliceDescriptor);
  1590. return $;
  1591. }
  1592. };
  1593. armnnSerializer.SliceDescriptor = class SliceDescriptor {
  1594. static decode(reader, position) {
  1595. const $ = new armnnSerializer.SliceDescriptor();
  1596. $.begin = reader.array(position, 4, Uint32Array);
  1597. $.size = reader.array(position, 6, Uint32Array);
  1598. return $;
  1599. }
  1600. static decodeText(reader, json) {
  1601. const $ = new armnnSerializer.SliceDescriptor();
  1602. $.begin = reader.array(json.begin, Uint32Array);
  1603. $.size = reader.array(json.size, Uint32Array);
  1604. return $;
  1605. }
  1606. };
  1607. armnnSerializer.StridedSliceLayer = class StridedSliceLayer {
  1608. static decode(reader, position) {
  1609. const $ = new armnnSerializer.StridedSliceLayer();
  1610. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1611. $.descriptor = reader.table(position, 6, armnnSerializer.StridedSliceDescriptor);
  1612. return $;
  1613. }
  1614. static decodeText(reader, json) {
  1615. const $ = new armnnSerializer.StridedSliceLayer();
  1616. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1617. $.descriptor = reader.object(json.descriptor, armnnSerializer.StridedSliceDescriptor);
  1618. return $;
  1619. }
  1620. };
  1621. armnnSerializer.StridedSliceDescriptor = class StridedSliceDescriptor {
  1622. static decode(reader, position) {
  1623. const $ = new armnnSerializer.StridedSliceDescriptor();
  1624. $.begin = reader.array(position, 4, Int32Array);
  1625. $.end = reader.array(position, 6, Int32Array);
  1626. $.stride = reader.array(position, 8, Int32Array);
  1627. $.beginMask = reader.int32_(position, 10, 0);
  1628. $.endMask = reader.int32_(position, 12, 0);
  1629. $.shrinkAxisMask = reader.int32_(position, 14, 0);
  1630. $.ellipsisMask = reader.int32_(position, 16, 0);
  1631. $.newAxisMask = reader.int32_(position, 18, 0);
  1632. $.dataLayout = reader.int8_(position, 20, 0);
  1633. return $;
  1634. }
  1635. static decodeText(reader, json) {
  1636. const $ = new armnnSerializer.StridedSliceDescriptor();
  1637. $.begin = reader.array(json.begin, Int32Array);
  1638. $.end = reader.array(json.end, Int32Array);
  1639. $.stride = reader.array(json.stride, Int32Array);
  1640. $.beginMask = reader.value(json.beginMask, 0);
  1641. $.endMask = reader.value(json.endMask, 0);
  1642. $.shrinkAxisMask = reader.value(json.shrinkAxisMask, 0);
  1643. $.ellipsisMask = reader.value(json.ellipsisMask, 0);
  1644. $.newAxisMask = reader.value(json.newAxisMask, 0);
  1645. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  1646. return $;
  1647. }
  1648. };
  1649. armnnSerializer.ConcatLayer = class ConcatLayer {
  1650. static decode(reader, position) {
  1651. const $ = new armnnSerializer.ConcatLayer();
  1652. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1653. $.descriptor = reader.table(position, 6, armnnSerializer.OriginsDescriptor);
  1654. return $;
  1655. }
  1656. static decodeText(reader, json) {
  1657. const $ = new armnnSerializer.ConcatLayer();
  1658. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1659. $.descriptor = reader.object(json.descriptor, armnnSerializer.OriginsDescriptor);
  1660. return $;
  1661. }
  1662. };
  1663. armnnSerializer.MergerLayer = class MergerLayer {
  1664. static decode(reader, position) {
  1665. const $ = new armnnSerializer.MergerLayer();
  1666. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1667. $.descriptor = reader.table(position, 6, armnnSerializer.OriginsDescriptor);
  1668. return $;
  1669. }
  1670. static decodeText(reader, json) {
  1671. const $ = new armnnSerializer.MergerLayer();
  1672. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1673. $.descriptor = reader.object(json.descriptor, armnnSerializer.OriginsDescriptor);
  1674. return $;
  1675. }
  1676. };
  1677. armnnSerializer.UintVector = class UintVector {
  1678. static decode(reader, position) {
  1679. const $ = new armnnSerializer.UintVector();
  1680. $.data = reader.array(position, 4, Uint32Array);
  1681. return $;
  1682. }
  1683. static decodeText(reader, json) {
  1684. const $ = new armnnSerializer.UintVector();
  1685. $.data = reader.array(json.data, Uint32Array);
  1686. return $;
  1687. }
  1688. };
  1689. armnnSerializer.OriginsDescriptor = class OriginsDescriptor {
  1690. static decode(reader, position) {
  1691. const $ = new armnnSerializer.OriginsDescriptor();
  1692. $.concatAxis = reader.uint32_(position, 4, 0);
  1693. $.numViews = reader.uint32_(position, 6, 0);
  1694. $.numDimensions = reader.uint32_(position, 8, 0);
  1695. $.viewOrigins = reader.tables(position, 10, armnnSerializer.UintVector);
  1696. return $;
  1697. }
  1698. static decodeText(reader, json) {
  1699. const $ = new armnnSerializer.OriginsDescriptor();
  1700. $.concatAxis = reader.value(json.concatAxis, 0);
  1701. $.numViews = reader.value(json.numViews, 0);
  1702. $.numDimensions = reader.value(json.numDimensions, 0);
  1703. $.viewOrigins = reader.objects(json.viewOrigins, armnnSerializer.UintVector);
  1704. return $;
  1705. }
  1706. };
  1707. armnnSerializer.ViewsDescriptor = class ViewsDescriptor {
  1708. static decode(reader, position) {
  1709. const $ = new armnnSerializer.ViewsDescriptor();
  1710. $.origins = reader.table(position, 4, armnnSerializer.OriginsDescriptor);
  1711. $.viewSizes = reader.tables(position, 6, armnnSerializer.UintVector);
  1712. $.hasAxis = reader.bool_(position, 8, false);
  1713. $.axis = reader.int32_(position, 10, 0);
  1714. return $;
  1715. }
  1716. static decodeText(reader, json) {
  1717. const $ = new armnnSerializer.ViewsDescriptor();
  1718. $.origins = reader.object(json.origins, armnnSerializer.OriginsDescriptor);
  1719. $.viewSizes = reader.objects(json.viewSizes, armnnSerializer.UintVector);
  1720. $.hasAxis = reader.value(json.hasAxis, false);
  1721. $.axis = reader.value(json.axis, 0);
  1722. return $;
  1723. }
  1724. };
  1725. armnnSerializer.SplitterLayer = class SplitterLayer {
  1726. static decode(reader, position) {
  1727. const $ = new armnnSerializer.SplitterLayer();
  1728. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1729. $.descriptor = reader.table(position, 6, armnnSerializer.ViewsDescriptor);
  1730. return $;
  1731. }
  1732. static decodeText(reader, json) {
  1733. const $ = new armnnSerializer.SplitterLayer();
  1734. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1735. $.descriptor = reader.object(json.descriptor, armnnSerializer.ViewsDescriptor);
  1736. return $;
  1737. }
  1738. };
  1739. armnnSerializer.DetectionPostProcessLayer = class DetectionPostProcessLayer {
  1740. static decode(reader, position) {
  1741. const $ = new armnnSerializer.DetectionPostProcessLayer();
  1742. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1743. $.descriptor = reader.table(position, 6, armnnSerializer.DetectionPostProcessDescriptor);
  1744. $.anchors = reader.table(position, 8, armnnSerializer.ConstTensor);
  1745. return $;
  1746. }
  1747. static decodeText(reader, json) {
  1748. const $ = new armnnSerializer.DetectionPostProcessLayer();
  1749. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1750. $.descriptor = reader.object(json.descriptor, armnnSerializer.DetectionPostProcessDescriptor);
  1751. $.anchors = reader.object(json.anchors, armnnSerializer.ConstTensor);
  1752. return $;
  1753. }
  1754. };
  1755. armnnSerializer.DetectionPostProcessDescriptor = class DetectionPostProcessDescriptor {
  1756. static decode(reader, position) {
  1757. const $ = new armnnSerializer.DetectionPostProcessDescriptor();
  1758. $.maxDetections = reader.uint32_(position, 4, 0);
  1759. $.maxClassesPerDetection = reader.uint32_(position, 6, 0);
  1760. $.detectionsPerClass = reader.uint32_(position, 8, 0);
  1761. $.nmsScoreThreshold = reader.float32_(position, 10, 0);
  1762. $.nmsIouThreshold = reader.float32_(position, 12, 0);
  1763. $.numClasses = reader.uint32_(position, 14, 0);
  1764. $.useRegularNms = reader.bool_(position, 16, false);
  1765. $.scaleX = reader.float32_(position, 18, 0);
  1766. $.scaleY = reader.float32_(position, 20, 0);
  1767. $.scaleW = reader.float32_(position, 22, 0);
  1768. $.scaleH = reader.float32_(position, 24, 0);
  1769. return $;
  1770. }
  1771. static decodeText(reader, json) {
  1772. const $ = new armnnSerializer.DetectionPostProcessDescriptor();
  1773. $.maxDetections = reader.value(json.maxDetections, 0);
  1774. $.maxClassesPerDetection = reader.value(json.maxClassesPerDetection, 0);
  1775. $.detectionsPerClass = reader.value(json.detectionsPerClass, 0);
  1776. $.nmsScoreThreshold = reader.value(json.nmsScoreThreshold, 0);
  1777. $.nmsIouThreshold = reader.value(json.nmsIouThreshold, 0);
  1778. $.numClasses = reader.value(json.numClasses, 0);
  1779. $.useRegularNms = reader.value(json.useRegularNms, false);
  1780. $.scaleX = reader.value(json.scaleX, 0);
  1781. $.scaleY = reader.value(json.scaleY, 0);
  1782. $.scaleW = reader.value(json.scaleW, 0);
  1783. $.scaleH = reader.value(json.scaleH, 0);
  1784. return $;
  1785. }
  1786. };
  1787. armnnSerializer.LstmInputParams = class LstmInputParams {
  1788. static decode(reader, position) {
  1789. const $ = new armnnSerializer.LstmInputParams();
  1790. $.inputToForgetWeights = reader.table(position, 4, armnnSerializer.ConstTensor);
  1791. $.inputToCellWeights = reader.table(position, 6, armnnSerializer.ConstTensor);
  1792. $.inputToOutputWeights = reader.table(position, 8, armnnSerializer.ConstTensor);
  1793. $.recurrentToForgetWeights = reader.table(position, 10, armnnSerializer.ConstTensor);
  1794. $.recurrentToCellWeights = reader.table(position, 12, armnnSerializer.ConstTensor);
  1795. $.recurrentToOutputWeights = reader.table(position, 14, armnnSerializer.ConstTensor);
  1796. $.forgetGateBias = reader.table(position, 16, armnnSerializer.ConstTensor);
  1797. $.cellBias = reader.table(position, 18, armnnSerializer.ConstTensor);
  1798. $.outputGateBias = reader.table(position, 20, armnnSerializer.ConstTensor);
  1799. $.inputToInputWeights = reader.table(position, 22, armnnSerializer.ConstTensor);
  1800. $.recurrentToInputWeights = reader.table(position, 24, armnnSerializer.ConstTensor);
  1801. $.cellToInputWeights = reader.table(position, 26, armnnSerializer.ConstTensor);
  1802. $.inputGateBias = reader.table(position, 28, armnnSerializer.ConstTensor);
  1803. $.projectionWeights = reader.table(position, 30, armnnSerializer.ConstTensor);
  1804. $.projectionBias = reader.table(position, 32, armnnSerializer.ConstTensor);
  1805. $.cellToForgetWeights = reader.table(position, 34, armnnSerializer.ConstTensor);
  1806. $.cellToOutputWeights = reader.table(position, 36, armnnSerializer.ConstTensor);
  1807. $.inputLayerNormWeights = reader.table(position, 38, armnnSerializer.ConstTensor);
  1808. $.forgetLayerNormWeights = reader.table(position, 40, armnnSerializer.ConstTensor);
  1809. $.cellLayerNormWeights = reader.table(position, 42, armnnSerializer.ConstTensor);
  1810. $.outputLayerNormWeights = reader.table(position, 44, armnnSerializer.ConstTensor);
  1811. return $;
  1812. }
  1813. static decodeText(reader, json) {
  1814. const $ = new armnnSerializer.LstmInputParams();
  1815. $.inputToForgetWeights = reader.object(json.inputToForgetWeights, armnnSerializer.ConstTensor);
  1816. $.inputToCellWeights = reader.object(json.inputToCellWeights, armnnSerializer.ConstTensor);
  1817. $.inputToOutputWeights = reader.object(json.inputToOutputWeights, armnnSerializer.ConstTensor);
  1818. $.recurrentToForgetWeights = reader.object(json.recurrentToForgetWeights, armnnSerializer.ConstTensor);
  1819. $.recurrentToCellWeights = reader.object(json.recurrentToCellWeights, armnnSerializer.ConstTensor);
  1820. $.recurrentToOutputWeights = reader.object(json.recurrentToOutputWeights, armnnSerializer.ConstTensor);
  1821. $.forgetGateBias = reader.object(json.forgetGateBias, armnnSerializer.ConstTensor);
  1822. $.cellBias = reader.object(json.cellBias, armnnSerializer.ConstTensor);
  1823. $.outputGateBias = reader.object(json.outputGateBias, armnnSerializer.ConstTensor);
  1824. $.inputToInputWeights = reader.object(json.inputToInputWeights, armnnSerializer.ConstTensor);
  1825. $.recurrentToInputWeights = reader.object(json.recurrentToInputWeights, armnnSerializer.ConstTensor);
  1826. $.cellToInputWeights = reader.object(json.cellToInputWeights, armnnSerializer.ConstTensor);
  1827. $.inputGateBias = reader.object(json.inputGateBias, armnnSerializer.ConstTensor);
  1828. $.projectionWeights = reader.object(json.projectionWeights, armnnSerializer.ConstTensor);
  1829. $.projectionBias = reader.object(json.projectionBias, armnnSerializer.ConstTensor);
  1830. $.cellToForgetWeights = reader.object(json.cellToForgetWeights, armnnSerializer.ConstTensor);
  1831. $.cellToOutputWeights = reader.object(json.cellToOutputWeights, armnnSerializer.ConstTensor);
  1832. $.inputLayerNormWeights = reader.object(json.inputLayerNormWeights, armnnSerializer.ConstTensor);
  1833. $.forgetLayerNormWeights = reader.object(json.forgetLayerNormWeights, armnnSerializer.ConstTensor);
  1834. $.cellLayerNormWeights = reader.object(json.cellLayerNormWeights, armnnSerializer.ConstTensor);
  1835. $.outputLayerNormWeights = reader.object(json.outputLayerNormWeights, armnnSerializer.ConstTensor);
  1836. return $;
  1837. }
  1838. };
  1839. armnnSerializer.LstmDescriptor = class LstmDescriptor {
  1840. static decode(reader, position) {
  1841. const $ = new armnnSerializer.LstmDescriptor();
  1842. $.activationFunc = reader.uint32_(position, 4, 0);
  1843. $.clippingThresCell = reader.float32_(position, 6, 0);
  1844. $.clippingThresProj = reader.float32_(position, 8, 0);
  1845. $.cifgEnabled = reader.bool_(position, 10, true);
  1846. $.peepholeEnabled = reader.bool_(position, 12, false);
  1847. $.projectionEnabled = reader.bool_(position, 14, false);
  1848. $.layerNormEnabled = reader.bool_(position, 16, false);
  1849. return $;
  1850. }
  1851. static decodeText(reader, json) {
  1852. const $ = new armnnSerializer.LstmDescriptor();
  1853. $.activationFunc = reader.value(json.activationFunc, 0);
  1854. $.clippingThresCell = reader.value(json.clippingThresCell, 0);
  1855. $.clippingThresProj = reader.value(json.clippingThresProj, 0);
  1856. $.cifgEnabled = reader.value(json.cifgEnabled, true);
  1857. $.peepholeEnabled = reader.value(json.peepholeEnabled, false);
  1858. $.projectionEnabled = reader.value(json.projectionEnabled, false);
  1859. $.layerNormEnabled = reader.value(json.layerNormEnabled, false);
  1860. return $;
  1861. }
  1862. };
  1863. armnnSerializer.LstmLayer = class LstmLayer {
  1864. static decode(reader, position) {
  1865. const $ = new armnnSerializer.LstmLayer();
  1866. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1867. $.descriptor = reader.table(position, 6, armnnSerializer.LstmDescriptor);
  1868. $.inputParams = reader.table(position, 8, armnnSerializer.LstmInputParams);
  1869. return $;
  1870. }
  1871. static decodeText(reader, json) {
  1872. const $ = new armnnSerializer.LstmLayer();
  1873. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1874. $.descriptor = reader.object(json.descriptor, armnnSerializer.LstmDescriptor);
  1875. $.inputParams = reader.object(json.inputParams, armnnSerializer.LstmInputParams);
  1876. return $;
  1877. }
  1878. };
  1879. armnnSerializer.QLstmInputParams = class QLstmInputParams {
  1880. static decode(reader, position) {
  1881. const $ = new armnnSerializer.QLstmInputParams();
  1882. $.inputToForgetWeights = reader.table(position, 4, armnnSerializer.ConstTensor);
  1883. $.inputToCellWeights = reader.table(position, 6, armnnSerializer.ConstTensor);
  1884. $.inputToOutputWeights = reader.table(position, 8, armnnSerializer.ConstTensor);
  1885. $.recurrentToForgetWeights = reader.table(position, 10, armnnSerializer.ConstTensor);
  1886. $.recurrentToCellWeights = reader.table(position, 12, armnnSerializer.ConstTensor);
  1887. $.recurrentToOutputWeights = reader.table(position, 14, armnnSerializer.ConstTensor);
  1888. $.forgetGateBias = reader.table(position, 16, armnnSerializer.ConstTensor);
  1889. $.cellBias = reader.table(position, 18, armnnSerializer.ConstTensor);
  1890. $.outputGateBias = reader.table(position, 20, armnnSerializer.ConstTensor);
  1891. $.inputToInputWeights = reader.table(position, 22, armnnSerializer.ConstTensor);
  1892. $.recurrentToInputWeights = reader.table(position, 24, armnnSerializer.ConstTensor);
  1893. $.inputGateBias = reader.table(position, 26, armnnSerializer.ConstTensor);
  1894. $.projectionWeights = reader.table(position, 28, armnnSerializer.ConstTensor);
  1895. $.projectionBias = reader.table(position, 30, armnnSerializer.ConstTensor);
  1896. $.cellToInputWeights = reader.table(position, 32, armnnSerializer.ConstTensor);
  1897. $.cellToForgetWeights = reader.table(position, 34, armnnSerializer.ConstTensor);
  1898. $.cellToOutputWeights = reader.table(position, 36, armnnSerializer.ConstTensor);
  1899. $.inputLayerNormWeights = reader.table(position, 38, armnnSerializer.ConstTensor);
  1900. $.forgetLayerNormWeights = reader.table(position, 40, armnnSerializer.ConstTensor);
  1901. $.cellLayerNormWeights = reader.table(position, 42, armnnSerializer.ConstTensor);
  1902. $.outputLayerNormWeights = reader.table(position, 44, armnnSerializer.ConstTensor);
  1903. return $;
  1904. }
  1905. static decodeText(reader, json) {
  1906. const $ = new armnnSerializer.QLstmInputParams();
  1907. $.inputToForgetWeights = reader.object(json.inputToForgetWeights, armnnSerializer.ConstTensor);
  1908. $.inputToCellWeights = reader.object(json.inputToCellWeights, armnnSerializer.ConstTensor);
  1909. $.inputToOutputWeights = reader.object(json.inputToOutputWeights, armnnSerializer.ConstTensor);
  1910. $.recurrentToForgetWeights = reader.object(json.recurrentToForgetWeights, armnnSerializer.ConstTensor);
  1911. $.recurrentToCellWeights = reader.object(json.recurrentToCellWeights, armnnSerializer.ConstTensor);
  1912. $.recurrentToOutputWeights = reader.object(json.recurrentToOutputWeights, armnnSerializer.ConstTensor);
  1913. $.forgetGateBias = reader.object(json.forgetGateBias, armnnSerializer.ConstTensor);
  1914. $.cellBias = reader.object(json.cellBias, armnnSerializer.ConstTensor);
  1915. $.outputGateBias = reader.object(json.outputGateBias, armnnSerializer.ConstTensor);
  1916. $.inputToInputWeights = reader.object(json.inputToInputWeights, armnnSerializer.ConstTensor);
  1917. $.recurrentToInputWeights = reader.object(json.recurrentToInputWeights, armnnSerializer.ConstTensor);
  1918. $.inputGateBias = reader.object(json.inputGateBias, armnnSerializer.ConstTensor);
  1919. $.projectionWeights = reader.object(json.projectionWeights, armnnSerializer.ConstTensor);
  1920. $.projectionBias = reader.object(json.projectionBias, armnnSerializer.ConstTensor);
  1921. $.cellToInputWeights = reader.object(json.cellToInputWeights, armnnSerializer.ConstTensor);
  1922. $.cellToForgetWeights = reader.object(json.cellToForgetWeights, armnnSerializer.ConstTensor);
  1923. $.cellToOutputWeights = reader.object(json.cellToOutputWeights, armnnSerializer.ConstTensor);
  1924. $.inputLayerNormWeights = reader.object(json.inputLayerNormWeights, armnnSerializer.ConstTensor);
  1925. $.forgetLayerNormWeights = reader.object(json.forgetLayerNormWeights, armnnSerializer.ConstTensor);
  1926. $.cellLayerNormWeights = reader.object(json.cellLayerNormWeights, armnnSerializer.ConstTensor);
  1927. $.outputLayerNormWeights = reader.object(json.outputLayerNormWeights, armnnSerializer.ConstTensor);
  1928. return $;
  1929. }
  1930. };
  1931. armnnSerializer.QLstmDescriptor = class QLstmDescriptor {
  1932. static decode(reader, position) {
  1933. const $ = new armnnSerializer.QLstmDescriptor();
  1934. $.cifgEnabled = reader.bool_(position, 4, true);
  1935. $.peepholeEnabled = reader.bool_(position, 6, false);
  1936. $.projectionEnabled = reader.bool_(position, 8, false);
  1937. $.layerNormEnabled = reader.bool_(position, 10, false);
  1938. $.cellClip = reader.float32_(position, 12, 0);
  1939. $.projectionClip = reader.float32_(position, 14, 0);
  1940. $.inputIntermediateScale = reader.float32_(position, 16, 0);
  1941. $.forgetIntermediateScale = reader.float32_(position, 18, 0);
  1942. $.cellIntermediateScale = reader.float32_(position, 20, 0);
  1943. $.outputIntermediateScale = reader.float32_(position, 22, 0);
  1944. $.hiddenStateZeroPoint = reader.int32_(position, 24, 0);
  1945. $.hiddenStateScale = reader.float32_(position, 26, 0);
  1946. return $;
  1947. }
  1948. static decodeText(reader, json) {
  1949. const $ = new armnnSerializer.QLstmDescriptor();
  1950. $.cifgEnabled = reader.value(json.cifgEnabled, true);
  1951. $.peepholeEnabled = reader.value(json.peepholeEnabled, false);
  1952. $.projectionEnabled = reader.value(json.projectionEnabled, false);
  1953. $.layerNormEnabled = reader.value(json.layerNormEnabled, false);
  1954. $.cellClip = reader.value(json.cellClip, 0);
  1955. $.projectionClip = reader.value(json.projectionClip, 0);
  1956. $.inputIntermediateScale = reader.value(json.inputIntermediateScale, 0);
  1957. $.forgetIntermediateScale = reader.value(json.forgetIntermediateScale, 0);
  1958. $.cellIntermediateScale = reader.value(json.cellIntermediateScale, 0);
  1959. $.outputIntermediateScale = reader.value(json.outputIntermediateScale, 0);
  1960. $.hiddenStateZeroPoint = reader.value(json.hiddenStateZeroPoint, 0);
  1961. $.hiddenStateScale = reader.value(json.hiddenStateScale, 0);
  1962. return $;
  1963. }
  1964. };
  1965. armnnSerializer.QLstmLayer = class QLstmLayer {
  1966. static decode(reader, position) {
  1967. const $ = new armnnSerializer.QLstmLayer();
  1968. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  1969. $.descriptor = reader.table(position, 6, armnnSerializer.QLstmDescriptor);
  1970. $.inputParams = reader.table(position, 8, armnnSerializer.QLstmInputParams);
  1971. return $;
  1972. }
  1973. static decodeText(reader, json) {
  1974. const $ = new armnnSerializer.QLstmLayer();
  1975. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  1976. $.descriptor = reader.object(json.descriptor, armnnSerializer.QLstmDescriptor);
  1977. $.inputParams = reader.object(json.inputParams, armnnSerializer.QLstmInputParams);
  1978. return $;
  1979. }
  1980. };
  1981. armnnSerializer.QuantizedLstmInputParams = class QuantizedLstmInputParams {
  1982. static decode(reader, position) {
  1983. const $ = new armnnSerializer.QuantizedLstmInputParams();
  1984. $.inputToInputWeights = reader.table(position, 4, armnnSerializer.ConstTensor);
  1985. $.inputToForgetWeights = reader.table(position, 6, armnnSerializer.ConstTensor);
  1986. $.inputToCellWeights = reader.table(position, 8, armnnSerializer.ConstTensor);
  1987. $.inputToOutputWeights = reader.table(position, 10, armnnSerializer.ConstTensor);
  1988. $.recurrentToInputWeights = reader.table(position, 12, armnnSerializer.ConstTensor);
  1989. $.recurrentToForgetWeights = reader.table(position, 14, armnnSerializer.ConstTensor);
  1990. $.recurrentToCellWeights = reader.table(position, 16, armnnSerializer.ConstTensor);
  1991. $.recurrentToOutputWeights = reader.table(position, 18, armnnSerializer.ConstTensor);
  1992. $.inputGateBias = reader.table(position, 20, armnnSerializer.ConstTensor);
  1993. $.forgetGateBias = reader.table(position, 22, armnnSerializer.ConstTensor);
  1994. $.cellBias = reader.table(position, 24, armnnSerializer.ConstTensor);
  1995. $.outputGateBias = reader.table(position, 26, armnnSerializer.ConstTensor);
  1996. return $;
  1997. }
  1998. static decodeText(reader, json) {
  1999. const $ = new armnnSerializer.QuantizedLstmInputParams();
  2000. $.inputToInputWeights = reader.object(json.inputToInputWeights, armnnSerializer.ConstTensor);
  2001. $.inputToForgetWeights = reader.object(json.inputToForgetWeights, armnnSerializer.ConstTensor);
  2002. $.inputToCellWeights = reader.object(json.inputToCellWeights, armnnSerializer.ConstTensor);
  2003. $.inputToOutputWeights = reader.object(json.inputToOutputWeights, armnnSerializer.ConstTensor);
  2004. $.recurrentToInputWeights = reader.object(json.recurrentToInputWeights, armnnSerializer.ConstTensor);
  2005. $.recurrentToForgetWeights = reader.object(json.recurrentToForgetWeights, armnnSerializer.ConstTensor);
  2006. $.recurrentToCellWeights = reader.object(json.recurrentToCellWeights, armnnSerializer.ConstTensor);
  2007. $.recurrentToOutputWeights = reader.object(json.recurrentToOutputWeights, armnnSerializer.ConstTensor);
  2008. $.inputGateBias = reader.object(json.inputGateBias, armnnSerializer.ConstTensor);
  2009. $.forgetGateBias = reader.object(json.forgetGateBias, armnnSerializer.ConstTensor);
  2010. $.cellBias = reader.object(json.cellBias, armnnSerializer.ConstTensor);
  2011. $.outputGateBias = reader.object(json.outputGateBias, armnnSerializer.ConstTensor);
  2012. return $;
  2013. }
  2014. };
  2015. armnnSerializer.QuantizedLstmLayer = class QuantizedLstmLayer {
  2016. static decode(reader, position) {
  2017. const $ = new armnnSerializer.QuantizedLstmLayer();
  2018. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2019. $.inputParams = reader.table(position, 6, armnnSerializer.QuantizedLstmInputParams);
  2020. return $;
  2021. }
  2022. static decodeText(reader, json) {
  2023. const $ = new armnnSerializer.QuantizedLstmLayer();
  2024. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2025. $.inputParams = reader.object(json.inputParams, armnnSerializer.QuantizedLstmInputParams);
  2026. return $;
  2027. }
  2028. };
  2029. armnnSerializer.DequantizeLayer = class DequantizeLayer {
  2030. static decode(reader, position) {
  2031. const $ = new armnnSerializer.DequantizeLayer();
  2032. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2033. return $;
  2034. }
  2035. static decodeText(reader, json) {
  2036. const $ = new armnnSerializer.DequantizeLayer();
  2037. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2038. return $;
  2039. }
  2040. };
  2041. armnnSerializer.MergeLayer = class MergeLayer {
  2042. static decode(reader, position) {
  2043. const $ = new armnnSerializer.MergeLayer();
  2044. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2045. return $;
  2046. }
  2047. static decodeText(reader, json) {
  2048. const $ = new armnnSerializer.MergeLayer();
  2049. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2050. return $;
  2051. }
  2052. };
  2053. armnnSerializer.SwitchLayer = class SwitchLayer {
  2054. static decode(reader, position) {
  2055. const $ = new armnnSerializer.SwitchLayer();
  2056. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2057. return $;
  2058. }
  2059. static decodeText(reader, json) {
  2060. const $ = new armnnSerializer.SwitchLayer();
  2061. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2062. return $;
  2063. }
  2064. };
  2065. armnnSerializer.PreluLayer = class PreluLayer {
  2066. static decode(reader, position) {
  2067. const $ = new armnnSerializer.PreluLayer();
  2068. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2069. return $;
  2070. }
  2071. static decodeText(reader, json) {
  2072. const $ = new armnnSerializer.PreluLayer();
  2073. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2074. return $;
  2075. }
  2076. };
  2077. armnnSerializer.TransposeConvolution2dLayer = class TransposeConvolution2dLayer {
  2078. static decode(reader, position) {
  2079. const $ = new armnnSerializer.TransposeConvolution2dLayer();
  2080. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2081. $.descriptor = reader.table(position, 6, armnnSerializer.TransposeConvolution2dDescriptor);
  2082. $.weights = reader.table(position, 8, armnnSerializer.ConstTensor);
  2083. $.biases = reader.table(position, 10, armnnSerializer.ConstTensor);
  2084. return $;
  2085. }
  2086. static decodeText(reader, json) {
  2087. const $ = new armnnSerializer.TransposeConvolution2dLayer();
  2088. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2089. $.descriptor = reader.object(json.descriptor, armnnSerializer.TransposeConvolution2dDescriptor);
  2090. $.weights = reader.object(json.weights, armnnSerializer.ConstTensor);
  2091. $.biases = reader.object(json.biases, armnnSerializer.ConstTensor);
  2092. return $;
  2093. }
  2094. };
  2095. armnnSerializer.TransposeConvolution2dDescriptor = class TransposeConvolution2dDescriptor {
  2096. static decode(reader, position) {
  2097. const $ = new armnnSerializer.TransposeConvolution2dDescriptor();
  2098. $.padLeft = reader.uint32_(position, 4, 0);
  2099. $.padRight = reader.uint32_(position, 6, 0);
  2100. $.padTop = reader.uint32_(position, 8, 0);
  2101. $.padBottom = reader.uint32_(position, 10, 0);
  2102. $.strideX = reader.uint32_(position, 12, 0);
  2103. $.strideY = reader.uint32_(position, 14, 0);
  2104. $.biasEnabled = reader.bool_(position, 16, false);
  2105. $.dataLayout = reader.int8_(position, 18, 1);
  2106. return $;
  2107. }
  2108. static decodeText(reader, json) {
  2109. const $ = new armnnSerializer.TransposeConvolution2dDescriptor();
  2110. $.padLeft = reader.value(json.padLeft, 0);
  2111. $.padRight = reader.value(json.padRight, 0);
  2112. $.padTop = reader.value(json.padTop, 0);
  2113. $.padBottom = reader.value(json.padBottom, 0);
  2114. $.strideX = reader.value(json.strideX, 0);
  2115. $.strideY = reader.value(json.strideY, 0);
  2116. $.biasEnabled = reader.value(json.biasEnabled, false);
  2117. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  2118. return $;
  2119. }
  2120. };
  2121. armnnSerializer.TransposeLayer = class TransposeLayer {
  2122. static decode(reader, position) {
  2123. const $ = new armnnSerializer.TransposeLayer();
  2124. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2125. $.descriptor = reader.table(position, 6, armnnSerializer.TransposeDescriptor);
  2126. return $;
  2127. }
  2128. static decodeText(reader, json) {
  2129. const $ = new armnnSerializer.TransposeLayer();
  2130. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2131. $.descriptor = reader.object(json.descriptor, armnnSerializer.TransposeDescriptor);
  2132. return $;
  2133. }
  2134. };
  2135. armnnSerializer.TransposeDescriptor = class TransposeDescriptor {
  2136. static decode(reader, position) {
  2137. const $ = new armnnSerializer.TransposeDescriptor();
  2138. $.dimMappings = reader.array(position, 4, Uint32Array);
  2139. return $;
  2140. }
  2141. static decodeText(reader, json) {
  2142. const $ = new armnnSerializer.TransposeDescriptor();
  2143. $.dimMappings = reader.array(json.dimMappings, Uint32Array);
  2144. return $;
  2145. }
  2146. };
  2147. armnnSerializer.ResizeLayer = class ResizeLayer {
  2148. static decode(reader, position) {
  2149. const $ = new armnnSerializer.ResizeLayer();
  2150. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2151. $.descriptor = reader.table(position, 6, armnnSerializer.ResizeDescriptor);
  2152. return $;
  2153. }
  2154. static decodeText(reader, json) {
  2155. const $ = new armnnSerializer.ResizeLayer();
  2156. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2157. $.descriptor = reader.object(json.descriptor, armnnSerializer.ResizeDescriptor);
  2158. return $;
  2159. }
  2160. };
  2161. armnnSerializer.ResizeDescriptor = class ResizeDescriptor {
  2162. static decode(reader, position) {
  2163. const $ = new armnnSerializer.ResizeDescriptor();
  2164. $.targetHeight = reader.uint32_(position, 4, 0);
  2165. $.targetWidth = reader.uint32_(position, 6, 0);
  2166. $.method = reader.int8_(position, 8, 0);
  2167. $.dataLayout = reader.int8_(position, 10, 0);
  2168. $.alignCorners = reader.bool_(position, 12, false);
  2169. $.halfPixelCenters = reader.bool_(position, 14, false);
  2170. return $;
  2171. }
  2172. static decodeText(reader, json) {
  2173. const $ = new armnnSerializer.ResizeDescriptor();
  2174. $.targetHeight = reader.value(json.targetHeight, 0);
  2175. $.targetWidth = reader.value(json.targetWidth, 0);
  2176. $.method = armnnSerializer.ResizeMethod[json.method];
  2177. $.dataLayout = armnnSerializer.DataLayout[json.dataLayout];
  2178. $.alignCorners = reader.value(json.alignCorners, false);
  2179. $.halfPixelCenters = reader.value(json.halfPixelCenters, false);
  2180. return $;
  2181. }
  2182. };
  2183. armnnSerializer.ReverseV2Layer = class ReverseV2Layer {
  2184. static decode(reader, position) {
  2185. const $ = new armnnSerializer.ReverseV2Layer();
  2186. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2187. return $;
  2188. }
  2189. static decodeText(reader, json) {
  2190. const $ = new armnnSerializer.ReverseV2Layer();
  2191. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2192. return $;
  2193. }
  2194. };
  2195. armnnSerializer.StackLayer = class StackLayer {
  2196. static decode(reader, position) {
  2197. const $ = new armnnSerializer.StackLayer();
  2198. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2199. $.descriptor = reader.table(position, 6, armnnSerializer.StackDescriptor);
  2200. return $;
  2201. }
  2202. static decodeText(reader, json) {
  2203. const $ = new armnnSerializer.StackLayer();
  2204. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2205. $.descriptor = reader.object(json.descriptor, armnnSerializer.StackDescriptor);
  2206. return $;
  2207. }
  2208. };
  2209. armnnSerializer.StackDescriptor = class StackDescriptor {
  2210. static decode(reader, position) {
  2211. const $ = new armnnSerializer.StackDescriptor();
  2212. $.axis = reader.uint32_(position, 4, 0);
  2213. $.numInputs = reader.uint32_(position, 6, 0);
  2214. $.inputShape = reader.array(position, 8, Uint32Array);
  2215. return $;
  2216. }
  2217. static decodeText(reader, json) {
  2218. const $ = new armnnSerializer.StackDescriptor();
  2219. $.axis = reader.value(json.axis, 0);
  2220. $.numInputs = reader.value(json.numInputs, 0);
  2221. $.inputShape = reader.array(json.inputShape, Uint32Array);
  2222. return $;
  2223. }
  2224. };
  2225. armnnSerializer.StandInDescriptor = class StandInDescriptor {
  2226. static decode(reader, position) {
  2227. const $ = new armnnSerializer.StandInDescriptor();
  2228. $.numInputs = reader.uint32_(position, 4, 0);
  2229. $.numOutputs = reader.uint32_(position, 6, 0);
  2230. return $;
  2231. }
  2232. static decodeText(reader, json) {
  2233. const $ = new armnnSerializer.StandInDescriptor();
  2234. $.numInputs = reader.value(json.numInputs, 0);
  2235. $.numOutputs = reader.value(json.numOutputs, 0);
  2236. return $;
  2237. }
  2238. };
  2239. armnnSerializer.StandInLayer = class StandInLayer {
  2240. static decode(reader, position) {
  2241. const $ = new armnnSerializer.StandInLayer();
  2242. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2243. $.descriptor = reader.table(position, 6, armnnSerializer.StandInDescriptor);
  2244. return $;
  2245. }
  2246. static decodeText(reader, json) {
  2247. const $ = new armnnSerializer.StandInLayer();
  2248. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2249. $.descriptor = reader.object(json.descriptor, armnnSerializer.StandInDescriptor);
  2250. return $;
  2251. }
  2252. };
  2253. armnnSerializer.RankLayer = class RankLayer {
  2254. static decode(reader, position) {
  2255. const $ = new armnnSerializer.RankLayer();
  2256. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2257. return $;
  2258. }
  2259. static decodeText(reader, json) {
  2260. const $ = new armnnSerializer.RankLayer();
  2261. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2262. return $;
  2263. }
  2264. };
  2265. armnnSerializer.ReduceLayer = class ReduceLayer {
  2266. static decode(reader, position) {
  2267. const $ = new armnnSerializer.ReduceLayer();
  2268. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2269. $.descriptor = reader.table(position, 6, armnnSerializer.ReduceDescriptor);
  2270. return $;
  2271. }
  2272. static decodeText(reader, json) {
  2273. const $ = new armnnSerializer.ReduceLayer();
  2274. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2275. $.descriptor = reader.object(json.descriptor, armnnSerializer.ReduceDescriptor);
  2276. return $;
  2277. }
  2278. };
  2279. armnnSerializer.ReduceDescriptor = class ReduceDescriptor {
  2280. static decode(reader, position) {
  2281. const $ = new armnnSerializer.ReduceDescriptor();
  2282. $.keepDims = reader.bool_(position, 4, false);
  2283. $.axis = reader.array(position, 6, Uint32Array);
  2284. $.reduceOperation = reader.int8_(position, 8, 0);
  2285. return $;
  2286. }
  2287. static decodeText(reader, json) {
  2288. const $ = new armnnSerializer.ReduceDescriptor();
  2289. $.keepDims = reader.value(json.keepDims, false);
  2290. $.axis = reader.array(json.axis, Uint32Array);
  2291. $.reduceOperation = armnnSerializer.ReduceOperation[json.reduceOperation];
  2292. return $;
  2293. }
  2294. };
  2295. armnnSerializer.UnidirectionalSequenceLstmDescriptor = class UnidirectionalSequenceLstmDescriptor {
  2296. static decode(reader, position) {
  2297. const $ = new armnnSerializer.UnidirectionalSequenceLstmDescriptor();
  2298. $.activationFunc = reader.uint32_(position, 4, 0);
  2299. $.clippingThresCell = reader.float32_(position, 6, 0);
  2300. $.clippingThresProj = reader.float32_(position, 8, 0);
  2301. $.cifgEnabled = reader.bool_(position, 10, true);
  2302. $.peepholeEnabled = reader.bool_(position, 12, false);
  2303. $.projectionEnabled = reader.bool_(position, 14, false);
  2304. $.layerNormEnabled = reader.bool_(position, 16, false);
  2305. $.timeMajor = reader.bool_(position, 18, false);
  2306. return $;
  2307. }
  2308. static decodeText(reader, json) {
  2309. const $ = new armnnSerializer.UnidirectionalSequenceLstmDescriptor();
  2310. $.activationFunc = reader.value(json.activationFunc, 0);
  2311. $.clippingThresCell = reader.value(json.clippingThresCell, 0);
  2312. $.clippingThresProj = reader.value(json.clippingThresProj, 0);
  2313. $.cifgEnabled = reader.value(json.cifgEnabled, true);
  2314. $.peepholeEnabled = reader.value(json.peepholeEnabled, false);
  2315. $.projectionEnabled = reader.value(json.projectionEnabled, false);
  2316. $.layerNormEnabled = reader.value(json.layerNormEnabled, false);
  2317. $.timeMajor = reader.value(json.timeMajor, false);
  2318. return $;
  2319. }
  2320. };
  2321. armnnSerializer.UnidirectionalSequenceLstmLayer = class UnidirectionalSequenceLstmLayer {
  2322. static decode(reader, position) {
  2323. const $ = new armnnSerializer.UnidirectionalSequenceLstmLayer();
  2324. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2325. $.descriptor = reader.table(position, 6, armnnSerializer.UnidirectionalSequenceLstmDescriptor);
  2326. $.inputParams = reader.table(position, 8, armnnSerializer.LstmInputParams);
  2327. return $;
  2328. }
  2329. static decodeText(reader, json) {
  2330. const $ = new armnnSerializer.UnidirectionalSequenceLstmLayer();
  2331. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2332. $.descriptor = reader.object(json.descriptor, armnnSerializer.UnidirectionalSequenceLstmDescriptor);
  2333. $.inputParams = reader.object(json.inputParams, armnnSerializer.LstmInputParams);
  2334. return $;
  2335. }
  2336. };
  2337. armnnSerializer.BatchMatMulDescriptor = class BatchMatMulDescriptor {
  2338. static decode(reader, position) {
  2339. const $ = new armnnSerializer.BatchMatMulDescriptor();
  2340. $.transposeX = reader.bool_(position, 4, false);
  2341. $.transposeY = reader.bool_(position, 6, false);
  2342. $.adjointX = reader.bool_(position, 8, false);
  2343. $.adjointY = reader.bool_(position, 10, false);
  2344. $.dataLayoutX = reader.int8_(position, 12, 1);
  2345. $.dataLayoutY = reader.int8_(position, 14, 1);
  2346. return $;
  2347. }
  2348. static decodeText(reader, json) {
  2349. const $ = new armnnSerializer.BatchMatMulDescriptor();
  2350. $.transposeX = reader.value(json.transposeX, false);
  2351. $.transposeY = reader.value(json.transposeY, false);
  2352. $.adjointX = reader.value(json.adjointX, false);
  2353. $.adjointY = reader.value(json.adjointY, false);
  2354. $.dataLayoutX = armnnSerializer.DataLayout[json.dataLayoutX];
  2355. $.dataLayoutY = armnnSerializer.DataLayout[json.dataLayoutY];
  2356. return $;
  2357. }
  2358. };
  2359. armnnSerializer.BatchMatMulLayer = class BatchMatMulLayer {
  2360. static decode(reader, position) {
  2361. const $ = new armnnSerializer.BatchMatMulLayer();
  2362. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2363. $.descriptor = reader.table(position, 6, armnnSerializer.BatchMatMulDescriptor);
  2364. return $;
  2365. }
  2366. static decodeText(reader, json) {
  2367. const $ = new armnnSerializer.BatchMatMulLayer();
  2368. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2369. $.descriptor = reader.object(json.descriptor, armnnSerializer.BatchMatMulDescriptor);
  2370. return $;
  2371. }
  2372. };
  2373. armnnSerializer.TileDescriptor = class TileDescriptor {
  2374. static decode(reader, position) {
  2375. const $ = new armnnSerializer.TileDescriptor();
  2376. $.m_Multiples = reader.array(position, 4, Uint32Array);
  2377. return $;
  2378. }
  2379. static decodeText(reader, json) {
  2380. const $ = new armnnSerializer.TileDescriptor();
  2381. $.m_Multiples = reader.array(json.m_Multiples, Uint32Array);
  2382. return $;
  2383. }
  2384. };
  2385. armnnSerializer.TileLayer = class TileLayer {
  2386. static decode(reader, position) {
  2387. const $ = new armnnSerializer.TileLayer();
  2388. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2389. $.descriptor = reader.table(position, 6, armnnSerializer.TileDescriptor);
  2390. return $;
  2391. }
  2392. static decodeText(reader, json) {
  2393. const $ = new armnnSerializer.TileLayer();
  2394. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2395. $.descriptor = reader.object(json.descriptor, armnnSerializer.TileDescriptor);
  2396. return $;
  2397. }
  2398. };
  2399. armnnSerializer.ScatterNdDescriptor = class ScatterNdDescriptor {
  2400. static decode(reader, position) {
  2401. const $ = new armnnSerializer.ScatterNdDescriptor();
  2402. $.m_Function = reader.int8_(position, 4, 0);
  2403. $.m_InputEnabled = reader.bool_(position, 6, true);
  2404. $.m_Axis = reader.int32_(position, 8, 0);
  2405. $.m_AxisEnabled = reader.bool_(position, 10, false);
  2406. return $;
  2407. }
  2408. static decodeText(reader, json) {
  2409. const $ = new armnnSerializer.ScatterNdDescriptor();
  2410. $.m_Function = armnnSerializer.ScatterNdFunction[json.m_Function];
  2411. $.m_InputEnabled = reader.value(json.m_InputEnabled, true);
  2412. $.m_Axis = reader.value(json.m_Axis, 0);
  2413. $.m_AxisEnabled = reader.value(json.m_AxisEnabled, false);
  2414. return $;
  2415. }
  2416. };
  2417. armnnSerializer.ScatterNdLayer = class ScatterNdLayer {
  2418. static decode(reader, position) {
  2419. const $ = new armnnSerializer.ScatterNdLayer();
  2420. $.base = reader.table(position, 4, armnnSerializer.LayerBase);
  2421. $.descriptor = reader.table(position, 6, armnnSerializer.ScatterNdDescriptor);
  2422. return $;
  2423. }
  2424. static decodeText(reader, json) {
  2425. const $ = new armnnSerializer.ScatterNdLayer();
  2426. $.base = reader.object(json.base, armnnSerializer.LayerBase);
  2427. $.descriptor = reader.object(json.descriptor, armnnSerializer.ScatterNdDescriptor);
  2428. return $;
  2429. }
  2430. };
  2431. armnnSerializer.Layer = class {
  2432. static decode(reader, position, type) {
  2433. switch (type) {
  2434. case 1: return armnnSerializer.ActivationLayer.decode(reader, position);
  2435. case 2: return armnnSerializer.AdditionLayer.decode(reader, position);
  2436. case 3: return armnnSerializer.BatchToSpaceNdLayer.decode(reader, position);
  2437. case 4: return armnnSerializer.BatchNormalizationLayer.decode(reader, position);
  2438. case 5: return armnnSerializer.ConstantLayer.decode(reader, position);
  2439. case 6: return armnnSerializer.Convolution2dLayer.decode(reader, position);
  2440. case 7: return armnnSerializer.DepthwiseConvolution2dLayer.decode(reader, position);
  2441. case 8: return armnnSerializer.FullyConnectedLayer.decode(reader, position);
  2442. case 9: return armnnSerializer.InputLayer.decode(reader, position);
  2443. case 10: return armnnSerializer.MultiplicationLayer.decode(reader, position);
  2444. case 11: return armnnSerializer.OutputLayer.decode(reader, position);
  2445. case 12: return armnnSerializer.PermuteLayer.decode(reader, position);
  2446. case 13: return armnnSerializer.Pooling2dLayer.decode(reader, position);
  2447. case 14: return armnnSerializer.ReshapeLayer.decode(reader, position);
  2448. case 15: return armnnSerializer.SoftmaxLayer.decode(reader, position);
  2449. case 16: return armnnSerializer.SpaceToBatchNdLayer.decode(reader, position);
  2450. case 17: return armnnSerializer.DivisionLayer.decode(reader, position);
  2451. case 18: return armnnSerializer.MinimumLayer.decode(reader, position);
  2452. case 19: return armnnSerializer.EqualLayer.decode(reader, position);
  2453. case 20: return armnnSerializer.MaximumLayer.decode(reader, position);
  2454. case 21: return armnnSerializer.NormalizationLayer.decode(reader, position);
  2455. case 22: return armnnSerializer.PadLayer.decode(reader, position);
  2456. case 23: return armnnSerializer.RsqrtLayer.decode(reader, position);
  2457. case 24: return armnnSerializer.FloorLayer.decode(reader, position);
  2458. case 25: return armnnSerializer.GreaterLayer.decode(reader, position);
  2459. case 26: return armnnSerializer.ResizeBilinearLayer.decode(reader, position);
  2460. case 27: return armnnSerializer.SubtractionLayer.decode(reader, position);
  2461. case 28: return armnnSerializer.StridedSliceLayer.decode(reader, position);
  2462. case 29: return armnnSerializer.GatherLayer.decode(reader, position);
  2463. case 30: return armnnSerializer.MeanLayer.decode(reader, position);
  2464. case 31: return armnnSerializer.MergerLayer.decode(reader, position);
  2465. case 32: return armnnSerializer.L2NormalizationLayer.decode(reader, position);
  2466. case 33: return armnnSerializer.SplitterLayer.decode(reader, position);
  2467. case 34: return armnnSerializer.DetectionPostProcessLayer.decode(reader, position);
  2468. case 35: return armnnSerializer.LstmLayer.decode(reader, position);
  2469. case 36: return armnnSerializer.QuantizedLstmLayer.decode(reader, position);
  2470. case 37: return armnnSerializer.QuantizeLayer.decode(reader, position);
  2471. case 38: return armnnSerializer.DequantizeLayer.decode(reader, position);
  2472. case 39: return armnnSerializer.MergeLayer.decode(reader, position);
  2473. case 40: return armnnSerializer.SwitchLayer.decode(reader, position);
  2474. case 41: return armnnSerializer.ConcatLayer.decode(reader, position);
  2475. case 42: return armnnSerializer.SpaceToDepthLayer.decode(reader, position);
  2476. case 43: return armnnSerializer.PreluLayer.decode(reader, position);
  2477. case 44: return armnnSerializer.TransposeConvolution2dLayer.decode(reader, position);
  2478. case 45: return armnnSerializer.ResizeLayer.decode(reader, position);
  2479. case 46: return armnnSerializer.StackLayer.decode(reader, position);
  2480. case 47: return armnnSerializer.AbsLayer.decode(reader, position);
  2481. case 48: return armnnSerializer.ArgMinMaxLayer.decode(reader, position);
  2482. case 49: return armnnSerializer.SliceLayer.decode(reader, position);
  2483. case 50: return armnnSerializer.DepthToSpaceLayer.decode(reader, position);
  2484. case 51: return armnnSerializer.InstanceNormalizationLayer.decode(reader, position);
  2485. case 52: return armnnSerializer.LogSoftmaxLayer.decode(reader, position);
  2486. case 53: return armnnSerializer.ComparisonLayer.decode(reader, position);
  2487. case 54: return armnnSerializer.StandInLayer.decode(reader, position);
  2488. case 55: return armnnSerializer.ElementwiseUnaryLayer.decode(reader, position);
  2489. case 56: return armnnSerializer.TransposeLayer.decode(reader, position);
  2490. case 57: return armnnSerializer.QLstmLayer.decode(reader, position);
  2491. case 58: return armnnSerializer.FillLayer.decode(reader, position);
  2492. case 59: return armnnSerializer.RankLayer.decode(reader, position);
  2493. case 60: return armnnSerializer.LogicalBinaryLayer.decode(reader, position);
  2494. case 61: return armnnSerializer.ReduceLayer.decode(reader, position);
  2495. case 62: return armnnSerializer.CastLayer.decode(reader, position);
  2496. case 63: return armnnSerializer.ShapeLayer.decode(reader, position);
  2497. case 64: return armnnSerializer.UnidirectionalSequenceLstmLayer.decode(reader, position);
  2498. case 65: return armnnSerializer.ChannelShuffleLayer.decode(reader, position);
  2499. case 66: return armnnSerializer.Convolution3dLayer.decode(reader, position);
  2500. case 67: return armnnSerializer.Pooling3dLayer.decode(reader, position);
  2501. case 68: return armnnSerializer.GatherNdLayer.decode(reader, position);
  2502. case 69: return armnnSerializer.BatchMatMulLayer.decode(reader, position);
  2503. case 70: return armnnSerializer.ElementwiseBinaryLayer.decode(reader, position);
  2504. case 71: return armnnSerializer.ReverseV2Layer.decode(reader, position);
  2505. case 72: return armnnSerializer.TileLayer.decode(reader, position);
  2506. case 73: return armnnSerializer.ScatterNdLayer.decode(reader, position);
  2507. default: return undefined;
  2508. }
  2509. }
  2510. static decodeText(reader, json, type) {
  2511. switch (type) {
  2512. case 'ActivationLayer': return armnnSerializer.ActivationLayer.decodeText(reader, json);
  2513. case 'AdditionLayer': return armnnSerializer.AdditionLayer.decodeText(reader, json);
  2514. case 'BatchToSpaceNdLayer': return armnnSerializer.BatchToSpaceNdLayer.decodeText(reader, json);
  2515. case 'BatchNormalizationLayer': return armnnSerializer.BatchNormalizationLayer.decodeText(reader, json);
  2516. case 'ConstantLayer': return armnnSerializer.ConstantLayer.decodeText(reader, json);
  2517. case 'Convolution2dLayer': return armnnSerializer.Convolution2dLayer.decodeText(reader, json);
  2518. case 'DepthwiseConvolution2dLayer': return armnnSerializer.DepthwiseConvolution2dLayer.decodeText(reader, json);
  2519. case 'FullyConnectedLayer': return armnnSerializer.FullyConnectedLayer.decodeText(reader, json);
  2520. case 'InputLayer': return armnnSerializer.InputLayer.decodeText(reader, json);
  2521. case 'MultiplicationLayer': return armnnSerializer.MultiplicationLayer.decodeText(reader, json);
  2522. case 'OutputLayer': return armnnSerializer.OutputLayer.decodeText(reader, json);
  2523. case 'PermuteLayer': return armnnSerializer.PermuteLayer.decodeText(reader, json);
  2524. case 'Pooling2dLayer': return armnnSerializer.Pooling2dLayer.decodeText(reader, json);
  2525. case 'ReshapeLayer': return armnnSerializer.ReshapeLayer.decodeText(reader, json);
  2526. case 'SoftmaxLayer': return armnnSerializer.SoftmaxLayer.decodeText(reader, json);
  2527. case 'SpaceToBatchNdLayer': return armnnSerializer.SpaceToBatchNdLayer.decodeText(reader, json);
  2528. case 'DivisionLayer': return armnnSerializer.DivisionLayer.decodeText(reader, json);
  2529. case 'MinimumLayer': return armnnSerializer.MinimumLayer.decodeText(reader, json);
  2530. case 'EqualLayer': return armnnSerializer.EqualLayer.decodeText(reader, json);
  2531. case 'MaximumLayer': return armnnSerializer.MaximumLayer.decodeText(reader, json);
  2532. case 'NormalizationLayer': return armnnSerializer.NormalizationLayer.decodeText(reader, json);
  2533. case 'PadLayer': return armnnSerializer.PadLayer.decodeText(reader, json);
  2534. case 'RsqrtLayer': return armnnSerializer.RsqrtLayer.decodeText(reader, json);
  2535. case 'FloorLayer': return armnnSerializer.FloorLayer.decodeText(reader, json);
  2536. case 'GreaterLayer': return armnnSerializer.GreaterLayer.decodeText(reader, json);
  2537. case 'ResizeBilinearLayer': return armnnSerializer.ResizeBilinearLayer.decodeText(reader, json);
  2538. case 'SubtractionLayer': return armnnSerializer.SubtractionLayer.decodeText(reader, json);
  2539. case 'StridedSliceLayer': return armnnSerializer.StridedSliceLayer.decodeText(reader, json);
  2540. case 'GatherLayer': return armnnSerializer.GatherLayer.decodeText(reader, json);
  2541. case 'MeanLayer': return armnnSerializer.MeanLayer.decodeText(reader, json);
  2542. case 'MergerLayer': return armnnSerializer.MergerLayer.decodeText(reader, json);
  2543. case 'L2NormalizationLayer': return armnnSerializer.L2NormalizationLayer.decodeText(reader, json);
  2544. case 'SplitterLayer': return armnnSerializer.SplitterLayer.decodeText(reader, json);
  2545. case 'DetectionPostProcessLayer': return armnnSerializer.DetectionPostProcessLayer.decodeText(reader, json);
  2546. case 'LstmLayer': return armnnSerializer.LstmLayer.decodeText(reader, json);
  2547. case 'QuantizedLstmLayer': return armnnSerializer.QuantizedLstmLayer.decodeText(reader, json);
  2548. case 'QuantizeLayer': return armnnSerializer.QuantizeLayer.decodeText(reader, json);
  2549. case 'DequantizeLayer': return armnnSerializer.DequantizeLayer.decodeText(reader, json);
  2550. case 'MergeLayer': return armnnSerializer.MergeLayer.decodeText(reader, json);
  2551. case 'SwitchLayer': return armnnSerializer.SwitchLayer.decodeText(reader, json);
  2552. case 'ConcatLayer': return armnnSerializer.ConcatLayer.decodeText(reader, json);
  2553. case 'SpaceToDepthLayer': return armnnSerializer.SpaceToDepthLayer.decodeText(reader, json);
  2554. case 'PreluLayer': return armnnSerializer.PreluLayer.decodeText(reader, json);
  2555. case 'TransposeConvolution2dLayer': return armnnSerializer.TransposeConvolution2dLayer.decodeText(reader, json);
  2556. case 'ResizeLayer': return armnnSerializer.ResizeLayer.decodeText(reader, json);
  2557. case 'StackLayer': return armnnSerializer.StackLayer.decodeText(reader, json);
  2558. case 'AbsLayer': return armnnSerializer.AbsLayer.decodeText(reader, json);
  2559. case 'ArgMinMaxLayer': return armnnSerializer.ArgMinMaxLayer.decodeText(reader, json);
  2560. case 'SliceLayer': return armnnSerializer.SliceLayer.decodeText(reader, json);
  2561. case 'DepthToSpaceLayer': return armnnSerializer.DepthToSpaceLayer.decodeText(reader, json);
  2562. case 'InstanceNormalizationLayer': return armnnSerializer.InstanceNormalizationLayer.decodeText(reader, json);
  2563. case 'LogSoftmaxLayer': return armnnSerializer.LogSoftmaxLayer.decodeText(reader, json);
  2564. case 'ComparisonLayer': return armnnSerializer.ComparisonLayer.decodeText(reader, json);
  2565. case 'StandInLayer': return armnnSerializer.StandInLayer.decodeText(reader, json);
  2566. case 'ElementwiseUnaryLayer': return armnnSerializer.ElementwiseUnaryLayer.decodeText(reader, json);
  2567. case 'TransposeLayer': return armnnSerializer.TransposeLayer.decodeText(reader, json);
  2568. case 'QLstmLayer': return armnnSerializer.QLstmLayer.decodeText(reader, json);
  2569. case 'FillLayer': return armnnSerializer.FillLayer.decodeText(reader, json);
  2570. case 'RankLayer': return armnnSerializer.RankLayer.decodeText(reader, json);
  2571. case 'LogicalBinaryLayer': return armnnSerializer.LogicalBinaryLayer.decodeText(reader, json);
  2572. case 'ReduceLayer': return armnnSerializer.ReduceLayer.decodeText(reader, json);
  2573. case 'CastLayer': return armnnSerializer.CastLayer.decodeText(reader, json);
  2574. case 'ShapeLayer': return armnnSerializer.ShapeLayer.decodeText(reader, json);
  2575. case 'UnidirectionalSequenceLstmLayer': return armnnSerializer.UnidirectionalSequenceLstmLayer.decodeText(reader, json);
  2576. case 'ChannelShuffleLayer': return armnnSerializer.ChannelShuffleLayer.decodeText(reader, json);
  2577. case 'Convolution3dLayer': return armnnSerializer.Convolution3dLayer.decodeText(reader, json);
  2578. case 'Pooling3dLayer': return armnnSerializer.Pooling3dLayer.decodeText(reader, json);
  2579. case 'GatherNdLayer': return armnnSerializer.GatherNdLayer.decodeText(reader, json);
  2580. case 'BatchMatMulLayer': return armnnSerializer.BatchMatMulLayer.decodeText(reader, json);
  2581. case 'ElementwiseBinaryLayer': return armnnSerializer.ElementwiseBinaryLayer.decodeText(reader, json);
  2582. case 'ReverseV2Layer': return armnnSerializer.ReverseV2Layer.decodeText(reader, json);
  2583. case 'TileLayer': return armnnSerializer.TileLayer.decodeText(reader, json);
  2584. case 'ScatterNdLayer': return armnnSerializer.ScatterNdLayer.decodeText(reader, json);
  2585. default: return undefined;
  2586. }
  2587. }
  2588. };
  2589. armnnSerializer.AnyLayer = class AnyLayer {
  2590. static decode(reader, position) {
  2591. const $ = new armnnSerializer.AnyLayer();
  2592. $.layer = reader.union(position, 4, armnnSerializer.Layer);
  2593. return $;
  2594. }
  2595. static decodeText(reader, json) {
  2596. const $ = new armnnSerializer.AnyLayer();
  2597. $.layer = armnnSerializer.Layer.decodeText(reader, json.layer, json.layer_type);
  2598. return $;
  2599. }
  2600. };
  2601. armnnSerializer.FeatureCompatibilityVersions = class FeatureCompatibilityVersions {
  2602. static decode(reader, position) {
  2603. const $ = new armnnSerializer.FeatureCompatibilityVersions();
  2604. $.bindingIdsScheme = reader.uint32_(position, 4, 0);
  2605. $.weightsLayoutScheme = reader.uint32_(position, 6, 0);
  2606. $.constantTensorsAsInputs = reader.uint32_(position, 8, 0);
  2607. return $;
  2608. }
  2609. static decodeText(reader, json) {
  2610. const $ = new armnnSerializer.FeatureCompatibilityVersions();
  2611. $.bindingIdsScheme = reader.value(json.bindingIdsScheme, 0);
  2612. $.weightsLayoutScheme = reader.value(json.weightsLayoutScheme, 0);
  2613. $.constantTensorsAsInputs = reader.value(json.constantTensorsAsInputs, 0);
  2614. return $;
  2615. }
  2616. };
  2617. armnnSerializer.SerializedGraph = class SerializedGraph {
  2618. static identifier(reader) {
  2619. return reader.identifier === 'ARMN';
  2620. }
  2621. static create(reader) {
  2622. return armnnSerializer.SerializedGraph.decode(reader, reader.root);
  2623. }
  2624. static createText(reader) {
  2625. return armnnSerializer.SerializedGraph.decodeText(reader, reader.root);
  2626. }
  2627. static decode(reader, position) {
  2628. const $ = new armnnSerializer.SerializedGraph();
  2629. $.layers = reader.tables(position, 4, armnnSerializer.AnyLayer);
  2630. $.inputIds = reader.array(position, 6, Int32Array);
  2631. $.outputIds = reader.array(position, 8, Int32Array);
  2632. $.featureVersions = reader.table(position, 10, armnnSerializer.FeatureCompatibilityVersions);
  2633. return $;
  2634. }
  2635. static decodeText(reader, json) {
  2636. const $ = new armnnSerializer.SerializedGraph();
  2637. $.layers = reader.objects(json.layers, armnnSerializer.AnyLayer);
  2638. $.inputIds = reader.array(json.inputIds, Int32Array);
  2639. $.outputIds = reader.array(json.outputIds, Int32Array);
  2640. $.featureVersions = reader.object(json.featureVersions, armnnSerializer.FeatureCompatibilityVersions);
  2641. return $;
  2642. }
  2643. };