aes70 1.3.8 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/Changelog +14 -1
  2. package/dist/AES70.es5.js +1 -1
  3. package/package.json +1 -1
  4. package/src/OCP1/OcaBlockMember.js +1 -1
  5. package/src/OCP1/OcaClassAuthorityID.js +1 -1
  6. package/src/OCP1/OcaClassIdentification.js +1 -1
  7. package/src/OCP1/OcaDBr.js +1 -1
  8. package/src/OCP1/OcaDelayValue.js +1 -1
  9. package/src/OCP1/OcaEvent.js +1 -1
  10. package/src/OCP1/OcaEventID.js +1 -1
  11. package/src/OCP1/OcaGlobalTypeIdentifier.js +1 -1
  12. package/src/OCP1/OcaGrouperCitizen.js +1 -1
  13. package/src/OCP1/OcaGrouperEnrollment.js +1 -1
  14. package/src/OCP1/OcaGrouperGroup.js +1 -1
  15. package/src/OCP1/OcaGrouperStatusChangeEventData.js +1 -3
  16. package/src/OCP1/OcaImpedance.js +1 -1
  17. package/src/OCP1/OcaLibParamSetAssignment.js +1 -1
  18. package/src/OCP1/OcaLibVol.js +1 -1
  19. package/src/OCP1/OcaLibVolChangedEventData.js +1 -3
  20. package/src/OCP1/OcaLibVolData_ParamSet.js +1 -1
  21. package/src/OCP1/OcaLibVolIdentifier.js +1 -1
  22. package/src/OCP1/OcaLibVolMetadata.js +1 -1
  23. package/src/OCP1/OcaLibVolType.js +1 -1
  24. package/src/OCP1/OcaLibraryIdentifier.js +1 -1
  25. package/src/OCP1/OcaManagerDescriptor.js +1 -1
  26. package/src/OCP1/OcaMediaClockRate.js +1 -1
  27. package/src/OCP1/OcaMediaCoding.js +1 -1
  28. package/src/OCP1/OcaMediaConnection.js +1 -1
  29. package/src/OCP1/OcaMediaConnectorElement.js +2 -2
  30. package/src/OCP1/OcaMediaConnectorStatus.js +1 -1
  31. package/src/OCP1/OcaMediaConnectorStatusChangedEventData.js +1 -3
  32. package/src/OCP1/OcaMediaSinkConnector.js +1 -1
  33. package/src/OCP1/OcaMediaSinkConnectorChangedEventData.js +1 -3
  34. package/src/OCP1/OcaMediaSourceConnector.js +1 -1
  35. package/src/OCP1/OcaMediaSourceConnectorChangedEventData.js +1 -3
  36. package/src/OCP1/OcaMethod.js +1 -1
  37. package/src/OCP1/OcaMethodID.js +1 -1
  38. package/src/OCP1/OcaModelDescription.js +1 -1
  39. package/src/OCP1/OcaModelGUID.js +1 -1
  40. package/src/OCP1/OcaNetworkStatistics.js +1 -1
  41. package/src/OCP1/OcaNetworkSystemInterfaceDescriptor.js +1 -1
  42. package/src/OCP1/OcaNetworkSystemInterfaceID.js +1 -1
  43. package/src/OCP1/OcaOPath.js +1 -1
  44. package/src/OCP1/OcaObjectIdentification.js +1 -1
  45. package/src/OCP1/OcaObjectListEventData.js +1 -3
  46. package/src/OCP1/OcaObjectSearchResult.js +1 -1
  47. package/src/OCP1/OcaObservationEventData.js +1 -3
  48. package/src/OCP1/OcaObservationListEventData.js +1 -3
  49. package/src/OCP1/OcaParameterMask.js +3 -0
  50. package/src/OCP1/OcaPilotToneDetectorSpec.js +1 -1
  51. package/src/OCP1/OcaPort.js +1 -1
  52. package/src/OCP1/OcaPortID.js +1 -1
  53. package/src/OCP1/OcaPositionDescriptor.js +3 -3
  54. package/src/OCP1/OcaPositionDescriptorFieldFlags.js +3 -0
  55. package/src/OCP1/OcaProperty.js +1 -1
  56. package/src/OCP1/OcaPropertyDescriptor.js +1 -1
  57. package/src/OCP1/OcaPropertyID.js +1 -1
  58. package/src/OCP1/OcaProtoObjectIdentification.js +1 -1
  59. package/src/OCP1/OcaProtoPort.js +1 -1
  60. package/src/OCP1/OcaProtoPortID.js +1 -1
  61. package/src/OCP1/OcaProtoSignalPath.js +1 -1
  62. package/src/OCP1/OcaSignalPath.js +1 -1
  63. package/src/OCP1/OcaStream.js +1 -1
  64. package/src/OCP1/OcaStreamConnectorIdentification.js +1 -1
  65. package/src/OCP1/OcaTask.js +1 -1
  66. package/src/OCP1/OcaTaskStateChangedEventData.js +1 -1
  67. package/src/OCP1/OcaTaskStatus.js +1 -1
  68. package/src/OCP1/OcaTimePTP.js +1 -1
  69. package/src/OCP1/OcaTransferFunction.js +1 -1
  70. package/src/OCP1/OcaVersion.js +1 -1
  71. package/src/controller/ControlClasses/OcaActuator.d.ts +3 -1
  72. package/src/controller/ControlClasses/OcaActuator.js +3 -1
  73. package/src/controller/ControlClasses/OcaAgent.d.ts +10 -7
  74. package/src/controller/ControlClasses/OcaAgent.js +12 -8
  75. package/src/controller/ControlClasses/OcaApplicationNetwork.d.ts +35 -21
  76. package/src/controller/ControlClasses/OcaApplicationNetwork.js +43 -32
  77. package/src/controller/ControlClasses/OcaAudioLevelSensor.d.ts +14 -8
  78. package/src/controller/ControlClasses/OcaAudioLevelSensor.js +13 -9
  79. package/src/controller/ControlClasses/OcaAudioProcessingManager.d.ts +3 -2
  80. package/src/controller/ControlClasses/OcaAudioProcessingManager.js +3 -2
  81. package/src/controller/ControlClasses/OcaBitstringActuator.d.ts +11 -8
  82. package/src/controller/ControlClasses/OcaBitstringActuator.js +13 -9
  83. package/src/controller/ControlClasses/OcaBitstringSensor.d.ts +7 -5
  84. package/src/controller/ControlClasses/OcaBitstringSensor.js +9 -6
  85. package/src/controller/ControlClasses/OcaBlock.d.ts +88 -74
  86. package/src/controller/ControlClasses/OcaBlock.js +80 -63
  87. package/src/controller/ControlClasses/OcaBlockFactory.d.ts +73 -29
  88. package/src/controller/ControlClasses/OcaBlockFactory.js +69 -42
  89. package/src/controller/ControlClasses/OcaBooleanActuator.d.ts +5 -4
  90. package/src/controller/ControlClasses/OcaBooleanActuator.js +6 -4
  91. package/src/controller/ControlClasses/OcaBooleanSensor.d.ts +3 -3
  92. package/src/controller/ControlClasses/OcaBooleanSensor.js +4 -3
  93. package/src/controller/ControlClasses/OcaCodingManager.d.ts +10 -7
  94. package/src/controller/ControlClasses/OcaCodingManager.js +17 -13
  95. package/src/controller/ControlClasses/OcaControlNetwork.d.ts +4 -5
  96. package/src/controller/ControlClasses/OcaControlNetwork.js +5 -6
  97. package/src/controller/ControlClasses/OcaCurrentSensor.d.ts +4 -4
  98. package/src/controller/ControlClasses/OcaCurrentSensor.js +4 -3
  99. package/src/controller/ControlClasses/OcaDelay.d.ts +6 -5
  100. package/src/controller/ControlClasses/OcaDelay.js +6 -4
  101. package/src/controller/ControlClasses/OcaDelayExtended.d.ts +18 -15
  102. package/src/controller/ControlClasses/OcaDelayExtended.js +17 -12
  103. package/src/controller/ControlClasses/OcaDeviceManager.d.ts +56 -31
  104. package/src/controller/ControlClasses/OcaDeviceManager.js +75 -51
  105. package/src/controller/ControlClasses/OcaDeviceTimeManager.d.ts +33 -16
  106. package/src/controller/ControlClasses/OcaDeviceTimeManager.js +36 -18
  107. package/src/controller/ControlClasses/OcaDiagnosticManager.d.ts +6 -3
  108. package/src/controller/ControlClasses/OcaDiagnosticManager.js +8 -5
  109. package/src/controller/ControlClasses/OcaDynamics.d.ts +89 -61
  110. package/src/controller/ControlClasses/OcaDynamics.js +101 -79
  111. package/src/controller/ControlClasses/OcaDynamicsCurve.d.ts +77 -30
  112. package/src/controller/ControlClasses/OcaDynamicsCurve.js +85 -37
  113. package/src/controller/ControlClasses/OcaDynamicsDetector.d.ts +30 -22
  114. package/src/controller/ControlClasses/OcaDynamicsDetector.js +36 -24
  115. package/src/controller/ControlClasses/OcaEventHandler.d.ts +8 -6
  116. package/src/controller/ControlClasses/OcaEventHandler.js +9 -6
  117. package/src/controller/ControlClasses/OcaFilterArbitraryCurve.d.ts +13 -9
  118. package/src/controller/ControlClasses/OcaFilterArbitraryCurve.js +15 -12
  119. package/src/controller/ControlClasses/OcaFilterClassical.d.ts +43 -30
  120. package/src/controller/ControlClasses/OcaFilterClassical.js +40 -31
  121. package/src/controller/ControlClasses/OcaFilterFIR.d.ts +12 -8
  122. package/src/controller/ControlClasses/OcaFilterFIR.js +19 -14
  123. package/src/controller/ControlClasses/OcaFilterParametric.d.ts +34 -25
  124. package/src/controller/ControlClasses/OcaFilterParametric.js +39 -33
  125. package/src/controller/ControlClasses/OcaFilterPolynomial.d.ts +6 -6
  126. package/src/controller/ControlClasses/OcaFilterPolynomial.js +11 -10
  127. package/src/controller/ControlClasses/OcaFirmwareManager.d.ts +71 -21
  128. package/src/controller/ControlClasses/OcaFirmwareManager.js +71 -22
  129. package/src/controller/ControlClasses/OcaFloat32Actuator.d.ts +6 -5
  130. package/src/controller/ControlClasses/OcaFloat32Actuator.js +6 -4
  131. package/src/controller/ControlClasses/OcaFloat32Sensor.d.ts +4 -4
  132. package/src/controller/ControlClasses/OcaFloat32Sensor.js +4 -3
  133. package/src/controller/ControlClasses/OcaFloat64Actuator.d.ts +6 -5
  134. package/src/controller/ControlClasses/OcaFloat64Actuator.js +6 -4
  135. package/src/controller/ControlClasses/OcaFloat64Sensor.d.ts +4 -4
  136. package/src/controller/ControlClasses/OcaFloat64Sensor.js +4 -3
  137. package/src/controller/ControlClasses/OcaFrequencyActuator.d.ts +6 -5
  138. package/src/controller/ControlClasses/OcaFrequencyActuator.js +6 -4
  139. package/src/controller/ControlClasses/OcaFrequencySensor.d.ts +4 -4
  140. package/src/controller/ControlClasses/OcaFrequencySensor.js +4 -3
  141. package/src/controller/ControlClasses/OcaGain.d.ts +6 -5
  142. package/src/controller/ControlClasses/OcaGain.js +6 -4
  143. package/src/controller/ControlClasses/OcaGainSensor.d.ts +6 -5
  144. package/src/controller/ControlClasses/OcaGainSensor.js +6 -4
  145. package/src/controller/ControlClasses/OcaGrouper.d.ts +138 -58
  146. package/src/controller/ControlClasses/OcaGrouper.js +139 -61
  147. package/src/controller/ControlClasses/OcaIdentificationActuator.d.ts +9 -10
  148. package/src/controller/ControlClasses/OcaIdentificationActuator.js +10 -10
  149. package/src/controller/ControlClasses/OcaIdentificationSensor.d.ts +6 -4
  150. package/src/controller/ControlClasses/OcaIdentificationSensor.js +5 -3
  151. package/src/controller/ControlClasses/OcaImpedanceSensor.d.ts +8 -8
  152. package/src/controller/ControlClasses/OcaImpedanceSensor.js +7 -6
  153. package/src/controller/ControlClasses/OcaInt16Actuator.d.ts +6 -5
  154. package/src/controller/ControlClasses/OcaInt16Actuator.js +6 -4
  155. package/src/controller/ControlClasses/OcaInt16Sensor.d.ts +4 -4
  156. package/src/controller/ControlClasses/OcaInt16Sensor.js +4 -3
  157. package/src/controller/ControlClasses/OcaInt32Actuator.d.ts +6 -5
  158. package/src/controller/ControlClasses/OcaInt32Actuator.js +6 -4
  159. package/src/controller/ControlClasses/OcaInt32Sensor.d.ts +4 -4
  160. package/src/controller/ControlClasses/OcaInt32Sensor.js +4 -3
  161. package/src/controller/ControlClasses/OcaInt64Actuator.d.ts +6 -5
  162. package/src/controller/ControlClasses/OcaInt64Actuator.js +6 -4
  163. package/src/controller/ControlClasses/OcaInt64Sensor.d.ts +4 -4
  164. package/src/controller/ControlClasses/OcaInt64Sensor.js +4 -3
  165. package/src/controller/ControlClasses/OcaInt8Actuator.d.ts +6 -5
  166. package/src/controller/ControlClasses/OcaInt8Actuator.js +6 -4
  167. package/src/controller/ControlClasses/OcaInt8Sensor.d.ts +4 -4
  168. package/src/controller/ControlClasses/OcaInt8Sensor.js +4 -3
  169. package/src/controller/ControlClasses/OcaLevelSensor.d.ts +4 -4
  170. package/src/controller/ControlClasses/OcaLevelSensor.js +4 -3
  171. package/src/controller/ControlClasses/OcaLibrary.d.ts +50 -25
  172. package/src/controller/ControlClasses/OcaLibrary.js +54 -26
  173. package/src/controller/ControlClasses/OcaLibraryManager.d.ts +22 -16
  174. package/src/controller/ControlClasses/OcaLibraryManager.js +22 -17
  175. package/src/controller/ControlClasses/OcaManager.d.ts +4 -1
  176. package/src/controller/ControlClasses/OcaManager.js +4 -1
  177. package/src/controller/ControlClasses/OcaMatrix.d.ts +69 -20
  178. package/src/controller/ControlClasses/OcaMatrix.js +86 -38
  179. package/src/controller/ControlClasses/OcaMediaClock.d.ts +33 -19
  180. package/src/controller/ControlClasses/OcaMediaClock.js +30 -19
  181. package/src/controller/ControlClasses/OcaMediaClock3.d.ts +37 -22
  182. package/src/controller/ControlClasses/OcaMediaClock3.js +39 -27
  183. package/src/controller/ControlClasses/OcaMediaClockManager.d.ts +15 -9
  184. package/src/controller/ControlClasses/OcaMediaClockManager.js +28 -23
  185. package/src/controller/ControlClasses/OcaMediaTransportNetwork.d.ts +106 -74
  186. package/src/controller/ControlClasses/OcaMediaTransportNetwork.js +121 -111
  187. package/src/controller/ControlClasses/OcaMute.d.ts +7 -7
  188. package/src/controller/ControlClasses/OcaMute.js +7 -5
  189. package/src/controller/ControlClasses/OcaNetwork.d.ts +38 -20
  190. package/src/controller/ControlClasses/OcaNetwork.js +58 -42
  191. package/src/controller/ControlClasses/OcaNetworkManager.d.ts +20 -9
  192. package/src/controller/ControlClasses/OcaNetworkManager.js +33 -23
  193. package/src/controller/ControlClasses/OcaNetworkSignalChannel.d.ts +43 -19
  194. package/src/controller/ControlClasses/OcaNetworkSignalChannel.js +67 -44
  195. package/src/controller/ControlClasses/OcaNumericObserver.d.ts +77 -38
  196. package/src/controller/ControlClasses/OcaNumericObserver.js +95 -59
  197. package/src/controller/ControlClasses/OcaNumericObserverList.d.ts +96 -45
  198. package/src/controller/ControlClasses/OcaNumericObserverList.js +129 -80
  199. package/src/controller/ControlClasses/OcaPanBalance.d.ts +10 -7
  200. package/src/controller/ControlClasses/OcaPanBalance.js +14 -11
  201. package/src/controller/ControlClasses/OcaPhysicalPosition.d.ts +31 -18
  202. package/src/controller/ControlClasses/OcaPhysicalPosition.js +43 -18
  203. package/src/controller/ControlClasses/OcaPolarity.d.ts +10 -7
  204. package/src/controller/ControlClasses/OcaPolarity.js +7 -5
  205. package/src/controller/ControlClasses/OcaPowerManager.d.ts +20 -14
  206. package/src/controller/ControlClasses/OcaPowerManager.js +27 -21
  207. package/src/controller/ControlClasses/OcaPowerSupply.d.ts +24 -15
  208. package/src/controller/ControlClasses/OcaPowerSupply.js +31 -23
  209. package/src/controller/ControlClasses/OcaRamper.d.ts +55 -34
  210. package/src/controller/ControlClasses/OcaRamper.js +58 -37
  211. package/src/controller/ControlClasses/OcaRoot.d.ts +28 -14
  212. package/src/controller/ControlClasses/OcaRoot.js +32 -24
  213. package/src/controller/ControlClasses/OcaSecurityManager.d.ts +29 -13
  214. package/src/controller/ControlClasses/OcaSecurityManager.js +31 -14
  215. package/src/controller/ControlClasses/OcaSensor.d.ts +4 -4
  216. package/src/controller/ControlClasses/OcaSensor.js +6 -5
  217. package/src/controller/ControlClasses/OcaSignalGenerator.d.ts +48 -38
  218. package/src/controller/ControlClasses/OcaSignalGenerator.js +57 -46
  219. package/src/controller/ControlClasses/OcaSignalInput.d.ts +4 -1
  220. package/src/controller/ControlClasses/OcaSignalInput.js +4 -1
  221. package/src/controller/ControlClasses/OcaSignalOutput.d.ts +4 -1
  222. package/src/controller/ControlClasses/OcaSignalOutput.js +4 -1
  223. package/src/controller/ControlClasses/OcaStreamConnector.d.ts +59 -24
  224. package/src/controller/ControlClasses/OcaStreamConnector.js +80 -48
  225. package/src/controller/ControlClasses/OcaStreamNetwork.d.ts +100 -27
  226. package/src/controller/ControlClasses/OcaStreamNetwork.js +124 -54
  227. package/src/controller/ControlClasses/OcaStringActuator.d.ts +5 -4
  228. package/src/controller/ControlClasses/OcaStringActuator.js +7 -5
  229. package/src/controller/ControlClasses/OcaStringSensor.d.ts +7 -5
  230. package/src/controller/ControlClasses/OcaStringSensor.js +10 -7
  231. package/src/controller/ControlClasses/OcaSubscriptionManager.d.ts +73 -46
  232. package/src/controller/ControlClasses/OcaSubscriptionManager.js +78 -51
  233. package/src/controller/ControlClasses/OcaSummingPoint.d.ts +2 -1
  234. package/src/controller/ControlClasses/OcaSummingPoint.js +2 -1
  235. package/src/controller/ControlClasses/OcaSwitch.d.ts +23 -15
  236. package/src/controller/ControlClasses/OcaSwitch.js +31 -23
  237. package/src/controller/ControlClasses/OcaTaskManager.d.ts +47 -38
  238. package/src/controller/ControlClasses/OcaTaskManager.js +48 -37
  239. package/src/controller/ControlClasses/OcaTemperatureActuator.d.ts +6 -5
  240. package/src/controller/ControlClasses/OcaTemperatureActuator.js +6 -4
  241. package/src/controller/ControlClasses/OcaTemperatureSensor.d.ts +4 -4
  242. package/src/controller/ControlClasses/OcaTemperatureSensor.js +4 -3
  243. package/src/controller/ControlClasses/OcaTimeIntervalSensor.d.ts +4 -4
  244. package/src/controller/ControlClasses/OcaTimeIntervalSensor.js +4 -3
  245. package/src/controller/ControlClasses/OcaTimeSource.d.ts +38 -22
  246. package/src/controller/ControlClasses/OcaTimeSource.js +41 -27
  247. package/src/controller/ControlClasses/OcaUint16Actuator.d.ts +6 -5
  248. package/src/controller/ControlClasses/OcaUint16Actuator.js +6 -4
  249. package/src/controller/ControlClasses/OcaUint16Sensor.d.ts +4 -4
  250. package/src/controller/ControlClasses/OcaUint16Sensor.js +4 -3
  251. package/src/controller/ControlClasses/OcaUint32Actuator.d.ts +6 -5
  252. package/src/controller/ControlClasses/OcaUint32Actuator.js +6 -4
  253. package/src/controller/ControlClasses/OcaUint32Sensor.d.ts +4 -4
  254. package/src/controller/ControlClasses/OcaUint32Sensor.js +4 -3
  255. package/src/controller/ControlClasses/OcaUint64Actuator.d.ts +6 -5
  256. package/src/controller/ControlClasses/OcaUint64Actuator.js +6 -4
  257. package/src/controller/ControlClasses/OcaUint64Sensor.d.ts +4 -4
  258. package/src/controller/ControlClasses/OcaUint64Sensor.js +4 -3
  259. package/src/controller/ControlClasses/OcaUint8Actuator.d.ts +6 -5
  260. package/src/controller/ControlClasses/OcaUint8Actuator.js +6 -4
  261. package/src/controller/ControlClasses/OcaUint8Sensor.d.ts +4 -4
  262. package/src/controller/ControlClasses/OcaUint8Sensor.js +4 -3
  263. package/src/controller/ControlClasses/OcaVoltageSensor.d.ts +4 -4
  264. package/src/controller/ControlClasses/OcaVoltageSensor.js +4 -3
  265. package/src/controller/ControlClasses/OcaWorker.d.ts +38 -28
  266. package/src/controller/ControlClasses/OcaWorker.js +50 -40
  267. package/src/controller/abstract_udp_connection.js +11 -7
  268. package/src/controller/client_connection.d.ts +1 -1
  269. package/src/controller/node_udp.js +2 -3
  270. package/src/controller/property_event.js +1 -1
  271. package/src/types/OcaBlockMember.d.ts +1 -2
  272. package/src/types/OcaClassAuthorityID.d.ts +14 -3
  273. package/src/types/OcaClassAuthorityID.js +8 -2
  274. package/src/types/OcaClassIdentification.d.ts +4 -3
  275. package/src/types/OcaClassIdentification.js +2 -2
  276. package/src/types/OcaComponent.d.ts +3 -1
  277. package/src/types/OcaComponent.js +3 -1
  278. package/src/types/OcaDBr.d.ts +6 -4
  279. package/src/types/OcaDBr.js +3 -2
  280. package/src/types/OcaDelayValue.d.ts +1 -2
  281. package/src/types/OcaDeviceState.d.ts +4 -1
  282. package/src/types/OcaDeviceState.js +4 -1
  283. package/src/types/OcaDynamicsFunction.d.ts +2 -1
  284. package/src/types/OcaDynamicsFunction.js +2 -1
  285. package/src/types/OcaEvent.d.ts +3 -3
  286. package/src/types/OcaEvent.js +2 -1
  287. package/src/types/OcaEventID.d.ts +3 -1
  288. package/src/types/OcaEventID.js +3 -1
  289. package/src/types/OcaGlobalTypeIdentifier.d.ts +10 -4
  290. package/src/types/OcaGlobalTypeIdentifier.js +5 -2
  291. package/src/types/OcaGrouperCitizen.d.ts +7 -5
  292. package/src/types/OcaGrouperCitizen.js +4 -2
  293. package/src/types/OcaGrouperEnrollment.d.ts +8 -4
  294. package/src/types/OcaGrouperEnrollment.js +4 -2
  295. package/src/types/OcaGrouperGroup.d.ts +4 -2
  296. package/src/types/OcaGrouperGroup.js +2 -1
  297. package/src/types/OcaGrouperMode.d.ts +1 -1
  298. package/src/types/OcaGrouperMode.js +1 -1
  299. package/src/types/OcaGrouperStatusChangeEventData.d.ts +7 -19
  300. package/src/types/OcaGrouperStatusChangeEventData.js +5 -8
  301. package/src/types/OcaGrouperStatusChangeType.d.ts +2 -1
  302. package/src/types/OcaGrouperStatusChangeType.js +2 -1
  303. package/src/types/OcaLevelDetectionLaw.d.ts +2 -1
  304. package/src/types/OcaLevelDetectionLaw.js +2 -1
  305. package/src/types/OcaLibParamSetAssignment.d.ts +3 -3
  306. package/src/types/OcaLibParamSetAssignment.js +2 -1
  307. package/src/types/OcaLibVol.d.ts +3 -3
  308. package/src/types/OcaLibVol.js +3 -2
  309. package/src/types/OcaLibVolChangedEventData.d.ts +4 -21
  310. package/src/types/OcaLibVolChangedEventData.js +3 -7
  311. package/src/types/OcaLibVolData_ParamSet.d.ts +13 -3
  312. package/src/types/OcaLibVolData_ParamSet.js +11 -3
  313. package/src/types/OcaLibVolMetadata.d.ts +4 -5
  314. package/src/types/OcaLibVolMetadata.js +1 -1
  315. package/src/types/OcaLibVolType.d.ts +12 -4
  316. package/src/types/OcaLibVolType.js +6 -2
  317. package/src/types/OcaLibraryIdentifier.d.ts +3 -3
  318. package/src/types/OcaLibraryIdentifier.js +2 -1
  319. package/src/types/OcaManagerDefaultObjectNumbers.d.ts +58 -116
  320. package/src/types/OcaManagerDefaultObjectNumbers.js +2 -2
  321. package/src/types/OcaManagerDescriptor.d.ts +4 -0
  322. package/src/types/OcaManagerDescriptor.js +2 -0
  323. package/src/types/OcaMediaClockRate.d.ts +12 -6
  324. package/src/types/OcaMediaClockRate.js +6 -3
  325. package/src/types/OcaMediaCoding.d.ts +4 -2
  326. package/src/types/OcaMediaCoding.js +2 -1
  327. package/src/types/OcaMediaConnection.d.ts +21 -8
  328. package/src/types/OcaMediaConnection.js +18 -5
  329. package/src/types/OcaMediaConnectorStatus.d.ts +5 -4
  330. package/src/types/OcaMediaConnectorStatus.js +2 -1
  331. package/src/types/OcaMediaConnectorStatusChangedEventData.d.ts +2 -17
  332. package/src/types/OcaMediaConnectorStatusChangedEventData.js +1 -7
  333. package/src/types/OcaMediaSinkConnector.d.ts +43 -15
  334. package/src/types/OcaMediaSinkConnector.js +23 -7
  335. package/src/types/OcaMediaSinkConnectorChangedEventData.d.ts +20 -30
  336. package/src/types/OcaMediaSinkConnectorChangedEventData.js +8 -11
  337. package/src/types/OcaMediaSourceConnector.d.ts +33 -13
  338. package/src/types/OcaMediaSourceConnector.js +17 -7
  339. package/src/types/OcaMediaSourceConnectorChangedEventData.d.ts +20 -30
  340. package/src/types/OcaMediaSourceConnectorChangedEventData.js +8 -11
  341. package/src/types/OcaMethod.d.ts +8 -5
  342. package/src/types/OcaMethod.js +5 -2
  343. package/src/types/OcaMethodID.d.ts +3 -1
  344. package/src/types/OcaMethodID.js +3 -1
  345. package/src/types/OcaModelGUID.d.ts +4 -2
  346. package/src/types/OcaModelGUID.js +5 -4
  347. package/src/types/OcaNetworkMediaSourceOrSink.d.ts +2 -1
  348. package/src/types/OcaNetworkMediaSourceOrSink.js +2 -1
  349. package/src/types/OcaNetworkSystemInterfaceDescriptor.d.ts +2 -1
  350. package/src/types/OcaNetworkSystemInterfaceDescriptor.js +3 -2
  351. package/src/types/OcaNetworkSystemInterfaceID.d.ts +2 -1
  352. package/src/types/OcaNetworkSystemInterfaceID.js +3 -2
  353. package/src/types/OcaNotificationDeliveryMode.d.ts +2 -1
  354. package/src/types/OcaNotificationDeliveryMode.js +2 -1
  355. package/src/types/OcaOPath.d.ts +2 -1
  356. package/src/types/OcaOPath.js +2 -1
  357. package/src/types/OcaObjectIdentification.d.ts +3 -3
  358. package/src/types/OcaObjectIdentification.js +2 -1
  359. package/src/types/OcaObjectListEventData.d.ts +3 -16
  360. package/src/types/OcaObjectListEventData.js +4 -8
  361. package/src/types/OcaObjectSearchResult.d.ts +5 -3
  362. package/src/types/OcaObjectSearchResult.js +4 -1
  363. package/src/types/OcaObjectSearchResultFlags.d.ts +1 -1
  364. package/src/types/OcaObjectSearchResultFlags.js +1 -1
  365. package/src/types/OcaObservationEventData.d.ts +8 -16
  366. package/src/types/OcaObservationEventData.js +8 -7
  367. package/src/types/OcaObservationListEventData.d.ts +8 -16
  368. package/src/types/OcaObservationListEventData.js +9 -8
  369. package/src/types/OcaParameterMask.d.ts +13 -0
  370. package/src/types/OcaParameterMask.js +11 -0
  371. package/src/types/OcaPilotToneDetectorSpec.d.ts +1 -2
  372. package/src/types/OcaPort.d.ts +3 -3
  373. package/src/types/OcaPort.js +2 -1
  374. package/src/types/OcaPortID.d.ts +4 -3
  375. package/src/types/OcaPortID.js +3 -1
  376. package/src/types/OcaPositionCoordinateSystem.d.ts +2 -1
  377. package/src/types/OcaPositionCoordinateSystem.js +2 -1
  378. package/src/types/OcaPositionDescriptor.d.ts +21 -20
  379. package/src/types/OcaPositionDescriptor.js +12 -14
  380. package/src/types/OcaPositionDescriptorFieldFlags.d.ts +13 -0
  381. package/src/types/OcaPositionDescriptorFieldFlags.js +11 -0
  382. package/src/types/OcaPowerState.d.ts +2 -1
  383. package/src/types/OcaPowerState.js +2 -1
  384. package/src/types/OcaPresentationUnit.d.ts +8 -1
  385. package/src/types/OcaPresentationUnit.js +8 -1
  386. package/src/types/OcaProperty.d.ts +3 -3
  387. package/src/types/OcaProperty.js +2 -1
  388. package/src/types/OcaPropertyDescriptor.d.ts +9 -9
  389. package/src/types/OcaPropertyDescriptor.js +4 -3
  390. package/src/types/OcaPropertyID.d.ts +3 -1
  391. package/src/types/OcaPropertyID.js +3 -1
  392. package/src/types/OcaProtoObjectIdentification.d.ts +3 -3
  393. package/src/types/OcaProtoObjectIdentification.js +2 -1
  394. package/src/types/OcaProtoPort.d.ts +9 -5
  395. package/src/types/OcaProtoPort.js +5 -2
  396. package/src/types/OcaProtoPortID.d.ts +4 -3
  397. package/src/types/OcaProtoPortID.js +3 -1
  398. package/src/types/OcaProtoSignalPath.d.ts +1 -2
  399. package/src/types/OcaRamperCommand.d.ts +1 -1
  400. package/src/types/OcaRamperCommand.js +1 -1
  401. package/src/types/OcaRamperState.d.ts +15 -10
  402. package/src/types/OcaRamperState.js +15 -10
  403. package/src/types/OcaSensorReadingState.d.ts +2 -1
  404. package/src/types/OcaSensorReadingState.js +2 -1
  405. package/src/types/OcaSignalPath.d.ts +1 -2
  406. package/src/types/OcaStream.d.ts +23 -10
  407. package/src/types/OcaStream.js +17 -5
  408. package/src/types/OcaStreamConnectorIdentification.d.ts +17 -7
  409. package/src/types/OcaStreamConnectorIdentification.js +15 -6
  410. package/src/types/OcaSubscriptionManagerState.d.ts +1 -1
  411. package/src/types/OcaSubscriptionManagerState.js +1 -1
  412. package/src/types/OcaTask.d.ts +27 -13
  413. package/src/types/OcaTask.js +14 -6
  414. package/src/types/OcaTaskManagerState.d.ts +13 -9
  415. package/src/types/OcaTaskManagerState.js +13 -9
  416. package/src/types/OcaTaskState.d.ts +3 -1
  417. package/src/types/OcaTaskState.js +3 -1
  418. package/src/types/OcaTaskStateChangedEventData.d.ts +6 -6
  419. package/src/types/OcaTaskStateChangedEventData.js +2 -2
  420. package/src/types/OcaTaskStatus.d.ts +6 -5
  421. package/src/types/OcaTaskStatus.js +5 -3
  422. package/src/types/OcaTimeMode.d.ts +1 -1
  423. package/src/types/OcaTimeMode.js +1 -1
  424. package/src/types/OcaTimePTP.d.ts +8 -3
  425. package/src/types/OcaTimePTP.js +6 -2
  426. package/src/types/OcaTransferFunction.js +3 -3
  427. package/src/types/OcaUnitOfMeasure.d.ts +5 -1
  428. package/src/types/OcaUnitOfMeasure.js +5 -1
  429. package/src/types/OcaVersion.d.ts +7 -5
  430. package/src/types/OcaVersion.js +4 -2
package/Changelog CHANGED
@@ -2,7 +2,20 @@
2
2
 
3
3
  All notable changes and version updates will be documented in this file.
4
4
 
5
- ## [1.3.8]
5
+ ## [1.4] - 2022-12-07
6
+
7
+ - Change the signature of events: Events are now emitted as specified in the
8
+ aes70 standard with a single argument which is the corresponding event data
9
+ struct.
10
+
11
+ - Fix the encoding of OcaMediaConnectorElement. It was - incorrectly - encoded
12
+ as a single byte.
13
+
14
+ - Fix typescript declarations of OcaManagerDefaultObjectNumbers
15
+
16
+ - Introduce explicit types for bitsets for the typescript declarations.
17
+
18
+ ## [1.3.8] - 2022-09-28
6
19
 
7
20
  - Split UDP Connection into an abstract implementation and a concrete one
8
21
  to be used with NodeJS.
package/dist/AES70.es5.js CHANGED
@@ -1 +1 @@
1
- !function(){"use strict";function e(...e){try{console.warn(...e)}catch(e){}}function t(...e){try{console.error(...e)}catch(e){}}class n{constructor(){this.event_handlers=new Map}emit(e){const t=this.event_handlers.get(e),n=Array.prototype.slice.call(arguments,1);t&&t.forEach(e=>{try{e.apply(this,n)}catch(t){console.warn("ERROR when calling %o: %o",e,t)}})}on(e,t){let n=this.event_handlers.get(e);n||this.event_handlers.set(e,n=new Set),n.add(t)}addEventListener(e,t){this.on(e,t)}removeEventListener(e,t){const n=this.event_handlers.get(e);if(!n||!n.has(t))throw new Error("removeEventListeners(): not installed.");n.delete(t)}}class r{get messageType(){return this.constructor.messageType}}class s{get byteLength(){let e=this._byteLength;if(-1===e){const t=this.encoders,n=this.data;e=0;for(let r=0;r<t.length;r++)e+=t[r].encodedLength(n[r]);this._byteLength=e}return e}constructor(e,t){this.encoders=e,this.data=t,this._byteLength=-1}encodeTo(e,t){t|=0;const{encoders:n,data:r}=this;for(let s=0;s<n.length;s++)t=n[s].encodeTo(e,t,r[s]);return t}}class o extends r{constructor(e,t,n,r,s){super(),this.target=+e,this.method_level=0|t,this.method_index=0|n,this.param_count=0|r,this.parameters=s||null,this.handle=0}static get messageType(){return 0}encode_to(e,t){if(t|=0,e.setUint32(t,this.encoded_length()),t+=4,e.setUint32(t,this.handle),t+=4,e.setUint32(t,this.target),t+=4,e.setUint16(t,this.method_level),t+=2,e.setUint16(t,this.method_index),t+=2,e.setUint8(t,this.param_count),t++,this.param_count){const n=this.parameters;n instanceof s?t=n.encodeTo(e,t):(new Uint8Array(e.buffer).set(new Uint8Array(n),e.byteOffset+t),t+=n.byteLength)}return t}encoded_length(){return 17+(this.param_count?this.parameters.byteLength:0)}decode_from(e,t,n){let r=e.getUint32(t);if(t+=4,this.handle=e.getUint32(t),t+=4,this.target=e.getUint32(t),t+=4,this.method_level=e.getUint16(t),t+=2,this.method_index=e.getUint16(t),t+=2,this.param_count=e.getUint8(t),t++,r-=17,r<0)throw new Error("Bad Command Length.");if(r>0){if(!this.param_count)throw new Error("Expected no parameter bytes.");this.parameters=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+r),t+=r}return t}response(e,t,n){return new Response(this.handle,e,t,n)}}class i extends o{static get messageType(){return 1}}function a(e){if(!e.isConstantLength)return e;const t=e.encodedLength(),n=e.decode,r=e.encodeTo;return{isConstantLength:!0,encodedLength:e.encodedLength,encodeTo:r,decode:n,decodeFrom:function(e,r){const s=n(e,r);return[r+t,s]},decodeLength:function(e,n){return n+t}}}function c(e,t){const n=Object.keys(e).length;return t||(t=class{constructor(...t){if(t.length===n){let n=0;for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(this[r]=t[n++])}else{if(1!==t.length||"object"!=typeof t[0])throw new TypeError("Unexpected arguments.");{const n=t[0];for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this[t]=n[t])}}}}),a({type:t,isConstantLength:!1,encodedLength:function(t){let n=0;for(const r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue;n+=e[r].encodedLength(t[r])}return n},encodeTo:function(t,n,r){for(const s in e){if(!Object.prototype.hasOwnProperty.call(e,s))continue;n=e[s].encodeTo(t,n,r[s])}return n},decodeFrom:function(n,r){const s=new Array(e.length);let o=0;for(const t in e){if(!Object.prototype.hasOwnProperty.call(e,t))continue;const i=e[t];let a;[r,a]=i.decodeFrom(n,r),s[o++]=a}return[r,new t(...s)]},decodeLength:function(t,n){for(const r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue;n=e[r].decodeLength(t,n)}return n}})}const l=a({isConstantLength:!0,encodedLength:function(e){return 2},encodeTo:function(e,t,n){return e.setUint16(t,0|n,!1),t+2},decode:function(e,t){return e.getUint16(t,!1)}});class u{constructor(e,t){this.DefLevel=e,this.EventIndex=t}}const h=c({DefLevel:l,EventIndex:l},u),d=a({isConstantLength:!0,encodedLength:function(e){return 4},encodeTo:function(e,t,n){return e.setUint32(t,n,!1),t+4},decode:function(e,t){return e.getUint32(t,!1)}});class g{constructor(e,t){this.EmitterONo=e,this.EventID=t}}const f=c({EmitterONo:d,EventID:h},g);class S extends r{constructor(e,t,n,r,s,o,i){super(),this.target=e,this.method_level=0|t,this.method_index=0|n,this.context=r,this.event=s,this.param_count=0|o,this.parameters=i||null}static get messageType(){return 2}encode_to(e,t){e.setUint32(t,this.encoded_length()),t+=4,e.setUint32(t,this.target),t+=4,e.setUint16(t,this.method_level),t+=2,e.setUint16(t,this.method_index),t+=2,e.setUint8(t,this.param_count),t++;const n=this.context;if(n){const r=n.byteLength;e.setUint16(t,r),t+=2,r>0&&(new Uint8Array(e.buffer).set(new Uint8Array(this.context),e.byteOffset+t),t+=r)}else e.setUint16(t,0),t+=2;return e.setUint32(t,this.event.EmitterONo),t+=4,e.setUint16(t,this.event.EventID.DefLevel),t+=2,e.setUint16(t,this.event.EventID.EventIndex),t+=2,this.param_count>1&&(this.parameters instanceof s?t=this.parameters.encodeTo(e,t):(new Uint8Array(e.buffer).set(new Uint8Array(this.parameters),e.byteOffset+t),t+=this.parameters.byteLength)),t}encoded_length(){return 23+(this.param_count>1?this.parameters.byteLength:0)+(this.context?this.context.byteLength:0)}decode_from(e,t,n){let r=e.getUint32(t);t+=4,this.target=e.getUint32(t),t+=4,this.method_level=e.getUint16(t),t+=2,this.method_index=e.getUint16(t),t+=2,this.param_count=e.getUint8(t),t++;const s=e.getUint16(t);let o;if(t+=2,s?(this.context=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+s),t+=s):this.context=null,[t,o]=f.decodeFrom(e,t),this.event=o,r-=23+s,r<0)throw new Error("Bad Notification Length.");return r>0&&(this.parameters=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+r),t+=r),t}}class p extends r{constructor(e,t,n,r){super(),this.handle=e,this.status_code=0|t,this.param_count=0|n,this.parameters=r||null}static get messageType(){return 3}encoded_length(){return 10+(this.param_count?this.parameters.byteLength:0)}decode_from(e,t,n){let r=e.getUint32(t);if(t+=4,this.handle=e.getUint32(t),t+=4,this.status_code=e.getUint8(t),t++,this.param_count=e.getUint8(t),t++,r-=10,r<0)throw new Error("Bad Response length.");if(r>0){if(!this.param_count)throw new Error("Decoding response with parameterCount=0 but %o bytes of parameters",r);this.parameters=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+r),t+=r}return t}encode_to(e,t){return e.setUint32(t,this.encoded_length()),t+=4,e.setUint32(t,this.handle),t+=4,e.setUint8(t,this.status_code),t++,e.setUint8(t,this.param_count),t++,this.param_count&&(this.parameters instanceof s?t=this.parameters.encodeTo(e,t):(new Uint8Array(e.buffer).set(new Uint8Array(this.parameters),e.byteOffset+t),t+=this.parameters.byteLength)),t}}class m extends r{static get messageType(){return 4}constructor(e){super(),this.time=e||0}decode_from(e,t,n){if(4==n)this.time=e.getUint32(t),t+=4;else{if(2!=n)throw new Error("Bad keepalive timeout length.");this.time=1e3*e.getUint16(t),t+=2}return t}encode_to(e,t){return this.time%1e3?(e.setUint32(t,this.time),t+=4):(e.setUint16(t,this.time/1e3),t+=2),t}encoded_length(){return this.time%1e3?4:2}}const y=[o,i,S,p,m];function O(e,t,n){if(e.byteLength<e.byteOffset+t+10)return-1;if(t|=0,59!=e.getUint8(t))throw new Error("Bad sync value.");t++,t+=2;const r=e.getUint32(t);t+=4;const s=e.getUint8(t);t++;const o=e.getUint16(t);t+=2;const i=e.byteOffset+t-9+r;if(i>e.byteLength)return-1;n.length=o;const a=y[s];if(void 0===a)throw new Error("Bad Message Type");if(a===m&&1!==o)throw new Error("Bad KeepAlive message count.");for(let r=0;r<o;r++)n[r]=new a,t=n[r].decode_from(e,t,i-e.byteOffset-t);if(t!=i)throw new Error("Decode error: "+t+" vs "+i);return t}function b(e,t,n,r,s){r||(r=0),s||(s=n.length);if(!(s-r<=65535))throw new Error("Too many PDUs.");e.setUint8(t,59);const o=t+=1;e.setUint16(t,1);const i=t+=2;t+=4,e.setUint8(t,n[r].messageType),t++,e.setUint16(t,s-r),t+=2;for(let o=r;o<s;o++)t=n[o].encode_to(e,t);return e.setUint32(i,t-o),t}function w(e){Array.isArray(e)||(e=[e]);const t=function(e){let t=10;const n=e[0].messageType;for(let r=0;r<e.length;r++){const s=e[r];if(s.messageType!=n)throw new Error("Cannot combine different types in one message.");t+=s.encoded_length()}return t}(e),n=new ArrayBuffer(t);if(b(new DataView(n),0,e,0,e.length)!=t)throw new Error("Message length mismatch.");return n}class C{constructor(e,t){if(!(e<=4294967295))throw new TypeError("Invalid batch size.");this._pdus=[],this._batchSize=e,this._resultCallback=t,this._currentSize=0,this._currentCount=0,this._lastMessageType=-1,this._flushScheduled=!1,this._flushCb=()=>{this._flushScheduled=!1,null!==this._pdus&&this.flush()}}add(e){const t=this._currentSize,n=e.encoded_length(),r=e.messageType,s=this._lastMessageType===r&&4!==r&&this._currentCount<65535;let o=n;s||(o+=10),t&&t+o>this._batchSize&&(this.flush(),o=n+10),this._pdus.push(e),this._currentSize+=o,s?this._currentCount++:this._currentCount=1,this._lastMessageType=r,this._currentSize>this._batchSize?this.flush():1===this._pdus.length&&this.scheduleFlush()}scheduleFlush(){this._flushScheduled||(this._flushScheduled=!0,Promise.resolve().then(this._flushCb).catch(e=>{console.error(e)}))}flush(){if(!this._currentSize)return;const e=this._pdus,t=new ArrayBuffer(this._currentSize),n=new DataView(t),r=e.length;for(let t=0,s=0,o=0;t<r;t++){const i=e[t].messageType;t!==r-1&&t+1-s!=65535&&4!==i&&i===e[t+1].messageType||(o=b(n,o,e,s,t+1),s=t+1)}this._currentSize=0,this._lastMessageType=-1,this._currentCount=0,this._pdus.length=0,this._resultCallback(t)}dispose(){this._pdus=null}}class P extends n{constructor(e){e||(e={}),super();const t=this._now();this.options=e;const n=e.batch>=0?e.batch:65536;this._message_generator=new C(n,e=>this.write(e)),this.inbuf=null,this.inpos=0,this.last_rx_time=t,this.last_tx_time=t,this.rx_bytes=0,this.tx_bytes=0,this.keepalive_interval=-1,this._keepalive_interval_id=null;const r=()=>{this.removeEventListener("close",r),this.removeEventListener("error",r),this.cleanup()};this.on("close",r),this.on("error",r)}get is_reliable(){return!0}send(e){if(this.is_closed())throw new Error("Connection is closed.");this._message_generator.add(e)}tx_idle_time(){return this._now()-this.last_tx_time}rx_idle_time(){return this._now()-this.last_tx_time}read(e){if(this.rx_bytes+=e.byteLength,this.last_rx_time=this._now(),this.inbuf){const t=this.inbuf.byteLength-this.inpos,n=new Uint8Array(new ArrayBuffer(t+e.byteLength));n.set(new Uint8Array(this.inbuf,this.inpos)),n.set(new Uint8Array(e),t),this.inbuf=null,this.inpos=0,e=n.buffer}let t=0;const n=new DataView(e);try{do{const r=[],s=O(n,t,r);if(-1==s){this.inbuf=e,this.inpos=t;break}t=s,this.incoming(r)}while(t<e.byteLength)}catch(e){console.error(e),this.is_reliable&&(console.error("Error when handling incoming data. Closing connection."),this.close())}this._check_keepalive()}incoming(e){}write(e){this.last_tx_time=this._now(),this.tx_bytes+=e.byteLength}is_closed(){return null===this._message_generator}close(){this.emit("close")}error(e){this.emit("error",e)}cleanup(){if(this.is_closed())throw new Error("cleanup() called twice.");this.set_keepalive_interval(0),this._message_generator.dispose(),this._message_generator=null}_check_keepalive(){if(!(this.keepalive_interval>0))return;const e=this.keepalive_interval;this.rx_idle_time()>3*e?(this.emit("timeout"),this.error(new Error("Keepalive timeout."))):this.tx_idle_time()>.75*e&&(this.flush(),this.tx_idle_time()>.75*e&&this.send(new m(e)))}flush(){this._message_generator.flush()}set_keepalive_interval(e){const t=1e3*e;null!==this._keepalive_interval_id&&(clearInterval(this._keepalive_interval_id),this._keepalive_interval_id=null),this.keepalive_interval=t,this.is_closed()||(this.send(new m(t)),t>0&&(this._keepalive_interval_id=setInterval(()=>{this._check_keepalive()},t/2)))}}function _(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function G(e){let t=null;function n(n){if(null===t){t=new Map;for(const n in e)_(e,n)&&t.set(e[n],n)}return t.get(n)}let r=null;const s=class{constructor(t){if("string"==typeof t){if(!_(e,t))throw new Error("No such enum value.");return this.constructor[t]}if(null!==r&&r.has(t))return r.get(t);this.value=t,function(e,t){null===r&&(r=new Map),r.set(e,t)}(t,this)}get name(){return n(this.value)}valueOf(){return this.value}toString(){return this.name}static getName(e){const t=n(e);if(void 0===t)throw new Error("No such enum value.");return t}static getValue(t){const n=function(t){if(_(e,t))return e[t]}(t);if(void 0===n)throw new Error("No such enum value.");return n}static values(){return e}};for(const t in e)_(e,t)&&Object.defineProperty(s,t,{get:function(){return new this(e[t])},enumerable:!1,configurable:!0});return s}class v extends(G({OK:0,ProtocolVersionError:1,DeviceError:2,Locked:3,BadFormat:4,BadONo:5,ParameterError:6,ParameterOutOfRange:7,NotImplemented:8,InvalidRequest:9,ProcessingFailed:10,BadMethod:11,PartiallySucceeded:12,Timeout:13,BufferOverflow:14})){}class D{constructor(e,t){this.status=new v(e),this.cmd=t}static check_status(e,t){return e instanceof this&&e.status===t}toString(){return"RemoteError("+this.status+")"}}class T{constructor(e){this.values=e}item(e){return this.values[e]}get length(){return this.values.length}}class I{get handle(){return this.command.handle}constructor(e,t,n,r){this.resolve=e,this.reject=t,this.returnTypes=n,this.command=r,this.lastSent=0,this.retries=0}response(e){const{resolve:t,reject:n,returnTypes:r,command:s}=this;if(0!==e.status_code)n(new D(e.status_code,s));else if(r)try{const n=Math.min(e.param_count,r.length);if(0===n)t();else{const s=new Array(n),o=new DataView(e.parameters);for(let e=0,t=0;e<n;e++){let n;[t,n]=r[e].decodeFrom(o,t),s[e]=n}t(1===n?s[0]:new T(s))}}catch(e){n(e)}else t(e)}}function M(e){const t=e.EmitterONo,n=e.EventID;return[t,n.DefLevel,n.EventIndex].join(",")}class A extends P{constructor(e){super(e),this._pendingCommands=new Map,this._nextCommandHandle=0,this._subscribers=new Map}cleanup(){super.cleanup(),this._subscribers=null;const e=this._pendingCommands;this._pendingCommands=null;const t=new Error("closed");e.forEach((e,n)=>{e.reject(t)})}_addSubscriber(e,t){const n=M(e),r=this._subscribers;if(r.has(n))throw new Error("Subscriber already exists.");r.set(n,t)}_removeSubscriber(e){const t=M(e),n=this._subscribers;if(!n.has(t))throw new Error("Unknown subscriber.");n.delete(t)}_getNextCommandHandle(){let e;const t=this._pendingCommands;if(null===t)throw new Error("Connection not open.");do{e=this._nextCommandHandle,this._nextCommandHandle=e+1|0}while(t.has(e));return e}_estimate_next_tx_time(){return this._now()}send_command(e,t,n){const r=(n,r)=>{const s=this._getNextCommandHandle();e.handle=s;const o=new I(n,r,t,e);this._pendingCommands.set(s,o),o.lastSent=this._estimate_next_tx_time(),this.send(e)};if(!n)return new Promise(r);r(e=>n(!0,e),e=>n(!1,e))}_removePendingCommand(e){const t=this._pendingCommands,n=t.get(e);return n?(t.delete(e),n):null}incoming(e){for(let t=0;t<e.length;t++){if(null===this._pendingCommands)return;const n=e[t];if(n instanceof p){const e=this._removePendingCommand(n.handle);if(null===e){if(this.is_reliable)return void this.error(new Error("Unknown handle."));continue}e.response(n)}else if(n instanceof S){const e=this._subscribers,t=M(n.event),r=e.get(t);if(!r)continue;r(n)}else{if(!(n instanceof m))throw new Error("Unexpected PDU");if(!(n.time>0))throw new Error("Bad keepalive timeout.")}}}}class L{constructor(e,t,n){this.object=e,this.id=t,this.handlers=new Set,this.result=null,this.argumentTypes=n}GetOcaEvent(){return new g(this.object.ObjectNumber,this.id)}do_subscribe(){}do_unsubscribe(){}subscribe(e){return this.handlers.add(e),1===this.handlers.size?this.result=this.do_subscribe().then(()=>(this.result=null,!0)):null!==this.result?this.result:Promise.resolve(!0)}unsubscribe(e){return this.handlers.delete(e),this.handlers.size||this.do_unsubscribe().catch((function(){})),Promise.resolve(!0)}Dipose(){this.handlers.clear(),this.handlers.size&&this.do_unsubscribe().catch((function(){}))}}const E=new ArrayBuffer;class k extends L{constructor(e,n,r){super(e,n,r),this.callback=e=>{if(!this.handlers.size)return;const n=new Array(r.length),s=new DataView(e.parameters||E);for(let e=0,t=0;t<r.length;t++){let o;[e,o]=r[t].decodeFrom(s,e),n[t]=o}const o=this.object;this.handlers.forEach((function(e){try{e.apply(o,n)}catch(e){t(e)}}))}}do_subscribe(){return this.object.device.add_subscription(this.GetOcaEvent(),this.callback)}do_unsubscribe(e){return this.object.device.remove_subscription(this.GetOcaEvent(),this.callback)}}class x extends L{constructor(e,n,r){super(e,n,r),this.callback=(n,s,o)=>{if(n.DefLevel!==this.id.DefLevel||n.PropertyIndex!==this.id.PropertyIndex)return;const i=r[0].decodeFrom(s,0)[1];this.handlers.forEach((function(r){try{r.call(e,i,o,n)}catch(e){t(e)}}))}}do_subscribe(){return this.object.OnPropertyChanged.subscribe(this.callback)}do_unsubscribe(e){return this.object.OnPropertyChanged.unsubscribe(this.callback)}}class U extends(G({CurrentChanged:1,MinChanged:2,MaxChanged:3,ItemAdded:4,ItemChanged:5,ItemDeleted:6})){}class N{init(e){this.o=e,this.values=[],this.synchronized=!1,this.subscriptions=[]}sync(){if(this.synchronized)return Promise.resolve();let e=0;const t=[];return this.o.get_properties().forEach(n=>{const r=n.getter(this.o);if(!r)return;const s=n.event(this.o);if(s){const n=function(e,t,n){n===U.CurrentChanged&&(this.values[e]=t)}.bind(this,e);this.subscriptions.push(s.unsubscribe.bind(s,n)),t.push(s.subscribe(n).catch((function(){})))}t.push(r().then(function(e,t){t instanceof T&&(t=t.item(0)),this.values[e]=t}.bind(this,e),(function(){}))),e++}),Promise.all(t)}forEach(e,t){let n=0;t||(t=this),this.o.get_properties().forEach(r=>{r.getter(this.o)&&(e.call(t,this.values[n],r.name),n++)})}Dispose(){this.o=null,this.subscriptions.forEach(e=>e()),this.subscriptions=null}}class R{constructor(e,t){this.DefLevel=e,this.PropertyIndex=t}}class F{constructor(e,t,n){const r=new Map,s=[];this.by_name=r,this.parent=n,this.properties=s,this.level=t;for(let t=0;t<e.length;t++){const n=e[t];if(r.set(n.name,n),s[n.index]=n,n.aliases){const e=n.aliases;for(let t=0;t<e.length;t++)r.set(e[t],n)}}}find_property(e){if(e instanceof R){if(e.DefLevel==this.level)return this.properties[e.PropertyIndex];if(this.parent)return this.parent.find_property(e)}else{if("string"!=typeof e)throw new Error("Expected PropertyID");{const t=this.by_name.get(e);if(t)return t;if(this.parent)return this.parent.find_property(e)}}}find_name(e){const t=this.find_property(e);if(t)return t.name}forEach(e,t){const n=this.parent?this.parent.forEach(e,t):[],r=this.properties;for(let s=0;s<r.length;s++){const o=r[s];void 0!==o&&n.push(e.call(t,o))}return n}}class B{constructor(e,t,n,r,s,o,i){this.name=e,this.type=t,this.level=n,this.index=r,this.readonly=s,this.static=o,this.aliases=i}GetPropertyID(){return new R(this.level,this.index)}GetName(){return this.name}getter(e,t){let n=this.name,r=0;const s=this.aliases;if(this.static){const t=e.constructor[n];if(void 0!==t)return function(){return Promise.resolve(t)}}else{const r=e["Get"+n];if(r)return t?r:r.bind(e)}return s&&r<s.length&&(n=s[r++]),null}setter(e,t){if(this.readonly||this.static)return null;let n=this.name,r=0;const s=this.aliases;{const o=e["Set"+n];if(o)return t?o:o.bind(e);s&&r<s.length&&(n=s[r++])}return null}event(e){let t=this.name,n=0;const r=this.aliases;{const s=e["On"+t+"Changed"];if(s)return s;r&&n<r.length&&(t=r[n++])}return null}subscribe(e,n){const r=this.event(e),s=this.getter(e);return r&&r.subscribe(n).catch(t),s&&s().then(n,t),r||!!s}}function j(e,t){if(!t||!t.length)return;const[n,r,o,a,c]=t;e.prototype[n]=function(...e){const t=a.length;let n=null;t<e.length&&t+1===e.length&&"function"==typeof e[t]&&(n=e[t],e.length=t);const l=new i(this.ono,r,o,t,new s(a,e));return this.device.send_command(l,c,n)}}function V(e,t){const[n,r,s,o]=t;Object.defineProperty(e.prototype,"On"+n,{get:function(){const e="_On"+n,t=this[e];return t||(this[e]=new k(this,new u(r,s),o))}})}function z(e,t){t.static||"ObjectNumber"!==t.name&&Object.defineProperty(e.prototype,"On"+t.name+"Changed",{get:function(){const e="_On"+t.name+"Changed",n=this[e];return n||(this[e]=new x(this,new R(t.level,t.index),t.type))}})}function q(e){if("object"==typeof e&&e instanceof B)return e;if(Array.isArray(e))return"object"!=typeof e[1]&&(e[1]=function(e){throw new Error("Not implemented.")}(e[1])),new B(...e);throw new Error("Bad property.")}function H(e,t,n,r,s,o,i,a){let c=null,l=null;i=i.map(e=>q(e));const u=class extends s{static get ClassID(){return n}static get ClassVersion(){return r}static get ClassName(){return e}static get_properties(){return null===l&&(l=new F(i,t,s.get_properties())),l}static GetPropertySync(){return null===c&&(c=function(e){const t=Object.create(N.prototype),n=Object.create(e.prototype);let r=0;e.get_properties().forEach(e=>{const s=!!e.setter(n,!0);if(!e.getter(n,!0))return;const o={enumerable:!0,get:(i=r,function(){return this.values[i]})};var i,a;s&&(o.set=(a=e.setter(n,!0),function(e){return a.call(this.o,e),e})),Object.defineProperty(t,e.name,o),r++});const s=function(e){this.init(e)};return s.prototype=t,s}(this)),c}constructor(e,t){super(e,t);for(let e=0;e<i.length;e++){this["_On"+i[e].name+"Changed"]=null}for(let e=0;e<a.length;e++){this["_On"+a[e][0]]=null}}Dispose(){super.Dispose();for(let e=0;e<i.length;e++){const t=this["_On"+i[e].name+"Changed"];t&&t.Dispose()}for(let e=0;e<a.length;e++){const t=this["_On"+a[e][0]];t&&t.Dispose()}}};for(let e=0;e<o.length;e++)j(u,o[e]);for(let e=0;e<i.length;e++)z(u,i[e]);for(let e=0;e<a.length;e++)V(u,a[e]);return u}const W=a({isConstantLength:!0,encodedLength:function(e){return 1},encodeTo:function(e,t,n){return e.setUint8(t,n?1:0),t+1},decode:function(e,t){return 0!==e.getUint8(t)}}),K=a({isConstantLength:!1,encodedLength:function(e){if("string"!=typeof e)throw new TypeError("Expected string.");const t=e.length;if(t>65535)throw new Error("Array too long for String16 OCP.1 encoding.");return 2+2*t},encodeTo:function(e,t,n){const r=n.length;e.setUint16(t,r,!1),t+=2;for(let s=0;s<r;s++,t+=2)e.setUint16(t,n.charCodeAt(s),!1);return t},decodeFrom:function(e,t){const n=e.getUint16(t,!1);t+=2;const r=new Array(n);for(let s=0;s<n;s++,t+=2)r[s]=e.getUint16(t,!1);return[t,String.fromCharCode.apply(String,r)]},decodeLength:function(e,t){return t+2+2*e.getUint16(t)}});class X{constructor(e,t){this.ClassID=e,this.ClassVersion=t}}const Y=c({ClassID:K,ClassVersion:l},X),Q=a({isConstantLength:!0,encodedLength:function(e){return 1},encodeTo:function(e,t,n){return e.setUint8(t,0|n),t+1},decode:function(e,t){return e.getUint8(t)}});function J(e,t){const n=t.encodeTo,r=t.decode,s=a({isConstantLength:!0,encodedLength:t.encodedLength,encodeTo:function(t,r,s){if("object"==typeof s&&s instanceof e)s=s.value;else if("string"==typeof s)s=e.getValue(s);else{if("number"!=typeof s)throw new TypeError("Unsupported type.");e.getName(s)}return n(t,r,s)},decode:function(t,n){const s=r(t,n);return new e(s)}});for(const t in e.values())Object.defineProperty(s,t,{get:function(){return e[t]},enumerable:!1,configurable:!0});return s}function Z(e){return J(e,Q)}const $=Z(U),ee=c({DefLevel:l,PropertyIndex:l},R),te=new TextEncoder,ne=new TextDecoder;function re(e){return te.encode(e)}function se(e,t,n){const r=t;for(;n--;){const n=e.getUint8(t);if(t++,!(n<=127)){if(n<194)throw new Error("Invalid UTF8 sequence.");if(t++,!(n<=223||(t++,n<=239||(t++,n<=244))))throw new Error("Invalid UTF8 sequence.")}}return t-r}const oe=a({isConstantLength:!1,encodedLength:function(e){if("string"!=typeof e)throw new TypeError("Expected string.");return 2+re(e).byteLength},encodeTo:function(e,t,n){const r=function(e){let t=0;for(let n=0;n<e.length;n++,t++){const t=e.charCodeAt(n);if(t>=55296&&t<=56319){n++;const t=e.charCodeAt(n);if(t<56320||t>57343)throw new TypeError("Expected valid unicode string.")}}return t}(n);if(r>65535)throw new Error("String too long for OcaString OCP.1 encoding.");e.setUint16(t,r),t+=2;const s=new Uint8Array(re(n));return new Uint8Array(e.buffer,e.byteOffset).set(s,t),t+s.length},decodeFrom:function(e,t){const n=e.getUint16(t),r=se(e,t+=2,n),s=new Uint8Array(e.buffer,e.byteOffset+t,r);return[t+r,(o=s,ne.decode(o))];var o},decodeLength:function(e,t){const n=e.getUint16(t);return(t+=2)+se(e,t,n)}});const ie=H("OcaRoot",1,"",2,class{constructor(e,t){this.ono=e,this.device=t}get ObjectNumber(){return this.ono}get ClassVersion(){return this.constructor.ClassVersion}get ClassID(){return this.constructor.ClassID}get ClassName(){return this.constructor.ClassName}sendCommandRrq(e,t,n,r,s){const o=new i(this.ono,e,t,n,r);return this.device.send_command(o,s)}GetPropertyName(e){return this.get_properties().find_name(e)}GetPropertyID(e){const t=this.get_properties().find_property(e);if(t)return t.GetPropertyID()}static get_properties(){return null}get_properties(){return this.constructor.get_properties()}get __oca_properties__(){return this.get_properties()}GetPropertySync(){return new(this.constructor.GetPropertySync())(this)}Dispose(){}},[["GetClassIdentification",1,1,[],[Y]],["GetLockable",1,2,[],[W]],["LockTotal",1,3,[],[]],["Unlock",1,4,[],[]],["GetRole",1,5,[],[oe]],["LockReadonly",1,6,[],[]]],[["ClassID",[K],1,1,!0,!0,null],["ClassVersion",[l],1,2,!0,!0,null],["ObjectNumber",[d],1,3,!0,!1,null],["Lockable",[W],1,4,!0,!1,null],["Role",[oe],1,5,!0,!1,null]],[["PropertyChanged",1,1,[ee,(ae=1,a({isConstantLength:!1,encodedLength:function(e){if(!("object"==typeof e&&e instanceof DataView))throw new TypeError("Expected DataView.");return e.byteLength-ae},encodeTo:function(e,t,n){const r=n.byteLength,s=new Uint8Array(n.buffer,n.byteOffset,r);return new Uint8Array(e.buffer,e.byteOffset+t).set(s),t+r},decodeFrom:function(e,t){const n=e.byteLength-t-ae;return[t+n,new DataView(e.buffer,e.byteOffset+t,n)]},decodeLength:function(e,t){return t+(e.byteLength-t-ae)}})),$]]]);var ae;const ce=H("OcaManager",2,"",2,ie,[],[],[]),le=a({isConstantLength:!1,encodedLength:function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),!(Array.isArray(e)||e instanceof Uint8Array))throw new TypeError("Expected Array or Uint8Array");const t=e.length;if(t>65535)throw new Error("Array too long for OcaBlob OCP.1 encoding.");return 2+t},encodeTo:function(e,t,n){n instanceof ArrayBuffer&&(n=new Uint8Array(n));const r=n.length;e.setUint16(t,r),t+=2;return new Uint8Array(e.buffer,e.byteOffset).set(n,t),t+r},decodeFrom:function(e,t){const n=e.getUint16(t);return[(t+=2)+n,new Uint8Array(e.buffer,e.byteOffset+t,n)]},decodeLength:function(e,t){return t+2+e.getUint16(t)}});function ue(e){return a({isConstantLength:!0,encodedLength:function(t){return e},encodeTo:function(t,n,r){if(!(Array.isArray(r)||r instanceof Uint8Array))throw new TypeError("Expected Array or Uint8Array");if(r.length!==e)throw new Error("Length mismatch.");return new Uint8Array(t.buffer,t.byteOffset).set(r,n),n+e},decode:function(t,n){return new Uint8Array(t.buffer,t.byteOffset+n,e)}})}const he=l,de=he;function ge(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function fe(e){return e.isConstantLength?function(e){const t=e.encodedLength(void 0),n=e.encodeTo,r=e.decode;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!ge(e))throw new TypeError("Expected array.");const n=e.length;if(n>65535)throw new Error("Array too long for OcaList OCP.1 encoding");return 2+n*t},encodeTo:function(e,t,r){const s=r.length;e.setUint16(t,s),t+=2;for(let o=0;o<s;o++)t=n(e,t,r[o]);return t},decodeFrom:function(e,n){const s=e.getUint16(n);n+=2;const o=new Array(s);for(let i=0;i<s;i++)o[i]=r(e,n),n+=t;return[n,o]},decodeLength:function(e,n){return n+(2+e.getUint16(n)*t)}})}(e):function(e){const t=e.encodedLength,n=e.encodeTo,r=e.decodeFrom,s=e.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!ge(e))throw new TypeError("Expected array.");const n=e.length;if(n>65535)throw new Error("Array too long for OcaList OCP.1 encoding");let r=2;for(let s=0;s<n;s++)r+=t(e[s]);return r},encodeTo:function(e,t,r){const s=r.length;e.setUint16(t,s),t+=2;for(let o=0;o<s;o++)t=n(e,t,r[o]);return t},decodeFrom:function(e,t){const n=e.getUint16(t);t+=2;const s=new Array(n);for(let o=0;o<n;o++){let n;[t,n]=r(e,t),s[o]=n}return[t,s]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;for(let r=0;r<n;r++)t=s(e,t);return t}})}(e)}class Se{constructor(e,t,n,r){this.ObjectNumber=e,this.Name=t,this.ClassID=n,this.ClassVersion=r}}const pe=c({ObjectNumber:d,Name:oe,ClassID:K,ClassVersion:l},Se);class me{constructor(e,t,n){this.Manufacturer=e,this.Name=t,this.Version=n}}const ye=c({Manufacturer:oe,Name:oe,Version:oe},me);class Oe{constructor(e,t,n){this.Reserved=e,this.MfrCode=t,this.ModelCode=n}}const be=c({Reserved:ue(1),MfrCode:ue(3),ModelCode:ue(4)},Oe);class we extends(G({PowerOn:0,InternalError:1,Upgrade:2,ExternalRequest:3})){}const Ce=Z(we),Pe=H("OcaDeviceManager",3,"",2,ce,[["GetOcaVersion",3,1,[],[l]],["GetModelGUID",3,2,[],[be]],["GetSerialNumber",3,3,[],[oe]],["GetDeviceName",3,4,[],[oe]],["SetDeviceName",3,5,[oe],[]],["GetModelDescription",3,6,[],[ye]],["GetDeviceRole",3,7,[],[oe]],["SetDeviceRole",3,8,[oe],[]],["GetUserInventoryCode",3,9,[],[oe]],["SetUserInventoryCode",3,10,[oe],[]],["GetEnabled",3,11,[],[W]],["SetEnabled",3,12,[W],[]],["GetState",3,13,[],[de]],["SetResetKey",3,14,[ue(16),le],[]],["GetResetCause",3,15,[],[Ce]],["ClearResetCause",3,16,[],[]],["GetMessage",3,17,[],[oe]],["SetMessage",3,18,[oe],[]],["GetManagers",3,19,[],[fe(pe)]],["GetDeviceRevisionID",3,20,[],[oe]]],[["ModelGUID",[be],3,1,!1,!1,null],["SerialNumber",[oe],3,2,!1,!1,null],["ModelDescription",[ye],3,3,!1,!1,null],["DeviceName",[oe],3,4,!1,!1,null],["OcaVersion",[l],3,5,!1,!1,null],["DeviceRole",[oe],3,6,!1,!1,null],["UserInventoryCode",[oe],3,7,!1,!1,null],["Enabled",[W],3,8,!1,!1,null],["State",[de],3,9,!1,!1,null],["Busy",[W],3,10,!1,!1,null],["ResetCause",[Ce],3,11,!1,!1,null],["Message",[oe],3,12,!1,!1,null],["Managers",[fe(pe)],3,13,!1,!1,null],["DeviceRevisionID",[oe],3,14,!0,!1,null]],[]),_e=H("OcaSecurityManager",3,"",2,ce,[["AddPreSharedKey",3,4,[oe,le],[]],["ChangePreSharedKey",3,3,[oe,le],[]],["DeletePreSharedKey",3,5,[oe],[]],["DisableControlSecurity",3,2,[],[]],["EnableControlSecurity",3,1,[],[]]],[["secureControlData",[W],3,1,!1,!1,null]],[]);class Ge extends(G({BootLoader:0})){}const ve=J(Ge,l);class De{constructor(e,t,n,r){this.Major=e,this.Minor=t,this.Build=n,this.Component=r}}const Te=c({Major:d,Minor:d,Build:d,Component:ve},De),Ie=H("OcaFirmwareManager",3,"",2,ce,[["GetComponentVersions",3,1,[],[fe(Te)]],["StartUpdateProcess",3,2,[],[]],["BeginActiveImageUpdate",3,3,[ve],[]],["AddImageData",3,4,[d,le],[]],["VerifyImage",3,5,[le],[]],["EndActiveImageUpdate",3,6,[],[]],["BeginPassiveComponentUpdate",3,7,[ve,le,oe],[]],["EndUpdateProcess",3,8,[],[]]],[["ComponentVersions",[fe(Te)],3,1,!1,!1,null]],[]);class Me{constructor(e,t){this.DefLevel=e,this.MethodIndex=t}}const Ae=c({DefLevel:l,MethodIndex:l},Me);class Le{constructor(e,t){this.ONo=e,this.MethodID=t}}const Ee=c({ONo:d,MethodID:Ae},Le);class ke extends(G({Reliable:1,Fast:2})){}const xe=Z(ke);class Ue extends(G({Normal:1,EventsDisabled:2})){}const Ne=Z(Ue),Re=H("OcaSubscriptionManager",3,"",2,ce,[["RemoveSubscription",3,2,[f,Ee],[]],["AddSubscription",3,1,[f,Ee,le,xe,le],[]],["DisableNotifications",3,3,[],[]],["ReEnableNotifications",3,4,[],[]],["AddPropertyChangeSubscription",3,5,[d,ee,Ee,le,xe,le],[]],["RemovePropertyChangeSubscription",3,6,[d,ee,Ee],[]],["GetMaximumSubscriberContextLength",3,7,[],[l]]],[["State",[Ne],3,1,!1,!1,null]],[["NotificationsDisabled",3,1,[]],["SynchronizeState",3,2,[fe(d)]]]);class Fe extends(G({None:0,Working:1,Standby:2,Off:3})){}const Be=Z(Fe),je=H("OcaPowerManager",3,"",2,ce,[["GetState",3,1,[],[Be]],["SetState",3,2,[Be],[]],["GetPowerSupplies",3,3,[],[fe(d)]],["GetActivePowerSupplies",3,4,[],[fe(d)]],["ExchangePowerSupply",3,5,[d,d,W],[]],["GetAutoState",3,6,[],[W]]],[["State",[Be],3,1,!1,!1,null],["PowerSupplies",[fe(d)],3,2,!1,!1,null],["ActivePowerSupplies",[fe(d)],3,3,!1,!1,null],["AutoState",[W],3,4,!1,!1,null],["TargetState",[Be],3,5,!1,!1,null]],[]),Ve=H("OcaNetworkManager",3,"",2,ce,[["GetNetworks",3,1,[],[fe(d)]],["GetStreamNetworks",3,2,[],[fe(d)]],["GetControlNetworks",3,3,[],[fe(d)]],["GetMediaTransportNetworks",3,4,[],[fe(d)]]],[["Networks",[fe(d)],3,1,!1,!1,null],["StreamNetworks",[fe(d)],3,2,!1,!1,null],["ControlNetworks",[fe(d)],3,3,!1,!1,null],["MediaTransportNetworks",[fe(d)],3,4,!1,!1,null]],[]);class ze extends(G({None:0,Internal:1,Network:2,External:3})){}const qe=Z(ze),He=H("OcaMediaClockManager",3,"",2,ce,[["GetClocks",3,1,[],[fe(d)]],["GetMediaClockTypesSupported",3,2,[],[fe(qe)]],["GetClock3s",3,3,[],[fe(d)]]],[["ClockSourceTypesSupported",[fe(qe)],3,1,!1,!1,["MediaClockTypesSupported"]],["Clocks",[fe(d)],3,2,!1,!1,null],["Clock3s",[fe(d)],3,3,!1,!1,null]],[]);class We{constructor(e,t){this.Library=e,this.ID=t}}const Ke=c({Library:d,ID:d},We);class Xe{constructor(e,t){this.Authority=e,this.ID=t}}const Ye=c({Authority:ue(3),ID:d},Xe);class Qe{constructor(e,t){this.Type=e,this.ONo=t}}const Je=c({Type:Ye,ONo:d},Qe),Ze=H("OcaLibraryManager",3,"\b",2,ce,[["AddLibrary",3,1,[Ye],[Je]],["DeleteLibrary",3,2,[d],[]],["GetLibraryCount",3,3,[Ye],[l]],["GetLibraryList",3,4,[Ye],[fe(Je)]],["GetCurrentPatch",3,5,[],[Ke]],["ApplyPatch",3,6,[Ke],[]]],[["Libraries",[fe(Je)],3,1,!1,!1,null],["CurrentPatch",[Ke],3,2,!1,!1,null]],[]),$e=H("OcaAudioProcessingManager",3,"\t",2,ce,[],[],[]),et="undefined"!=typeof BigInt,tt=et&&(BigInt(1)<<BigInt(64))-BigInt(1),nt=et&&tt>>BigInt(1),rt=et&&-nt-BigInt(1),st=et&&(BigInt(1)<<BigInt(55))-BigInt(1);et&&BigInt(1);function ot(){if(!et)throw new Error("Missing BigInt support")}const it=a({isConstantLength:!0,encodedLength:function(e){return 8},encodeTo:function(e,t,n){if(ot(),!(n<=tt&&n>=0))throw new TypeError("Uint64 out of range.");return e.setBigUint64(t,BigInt(n),!1),t+8},decode:function(e,t){ot();const n=e.getBigUint64(t,!1);return n<=Number.MAX_SAFE_INTEGER?Number(n):n}});class at{constructor(e,t,n){this.Negative=e,this.Seconds=t,this.Nanoseconds=n}}const ct=c({Negative:W,Seconds:it,Nanoseconds:d},at),lt=H("OcaDeviceTimeManager",3,"\n",2,ce,[["GetDeviceTimeNTP",3,1,[],[it]],["SetDeviceTimeNTP",3,2,[it],[]],["GetTimeSources",3,3,[],[fe(d)]],["GetCurrentDeviceTimeSource",3,4,[],[d]],["SetCurrentDeviceTimeSource",3,5,[d],[]],["GetDeviceTimePTP",3,6,[],[ct]],["SetDeviceTimePTP",3,7,[ct],[]]],[["TimeSources",[fe(d)],3,1,!1,!1,null],["CurrentDeviceTimeSource",[d],3,2,!1,!1,null]],[]);function ut(e,t){const n=e.encodedLength,r=e.encodeTo,s=e.decodeFrom,o=e.decodeLength,i=t.encodedLength,c=t.encodeTo,l=t.decodeFrom,u=t.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!(e instanceof Map||e instanceof WeakMap))throw new TypeError("Expected Map or WeakMap");let t=2;return e.forEach((e,r)=>{t+=n(r),t+=i(e)}),t},encodeTo:function(e,t,n){return e.setUint16(t,n.size),t+=2,n.forEach((n,s)=>{t=r(e,t,s),t=c(e,t,n)}),t},decodeFrom:function(e,t){const n=new Map,r=e.getUint16(t);t+=2;for(let o=0;o<r;o++){let r,o;[t,r]=s(e,t),[t,o]=l(e,t),n.set(r,o)}if(n.size!==r)throw new Error("Key appeared twice in decoded Map.");return[t,n]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;for(let r=0;r<n;r++)t=o(e,t),t=u(e,t);return t}})}class ht extends(G({Absolute:1,Relative:2})){}const dt=Z(ht);class gt{constructor(e,t,n,r,s,o,i,a,c){this.ID=e,this.Label=t,this.ProgramID=n,this.GroupID=r,this.TimeMode=s,this.TimeSourceONo=o,this.StartTime=i,this.Duration=a,this.ApplicationSpecificParameters=c}}const ft=c({ID:d,Label:oe,ProgramID:Ke,GroupID:l,TimeMode:dt,TimeSourceONo:d,StartTime:ct,Duration:ct,ApplicationSpecificParameters:le},gt);class St extends(G({None:0,Prepare:1,Enable:2,Start:3,Stop:4,Abort:5,Disable:6,Clear:7})){}const pt=Z(St);class mt extends(G({None:0,Enabled:1,Disabled:2})){}const yt=Z(mt);class Ot extends(G({None:0,NotPrepared:1,Disabled:2,Enabled:3,Running:4,Completed:5,Failed:6,Stopped:7,Aborted:8})){}const bt=Z(Ot);class wt{constructor(e,t,n){this.ID=e,this.State=t,this.ErrorCode=n}}const Ct=c({ID:d,State:bt,ErrorCode:l},wt),Pt=H("OcaTaskManager",3,"\v",1,ce,[["Enable",3,1,[W],[]],["ControlAllTasks",3,2,[pt,le],[]],["ControlTaskGroup",3,3,[l,pt,le],[]],["ControlTask",3,4,[d,pt,le],[]],["GetState",3,5,[],[yt]],["GetTaskStatuses",3,6,[],[Ct]],["GetTaskStatus",3,7,[d],[Ct]],["AddTask",3,8,[ft],[ft]],["GetTasks",3,9,[],[ut(d,ft)]],["GetTask",3,10,[d],[ft]],["SetTask",3,11,[d,ft],[]],["DeleteTask",3,12,[d],[]]],[["State",[yt],3,1,!1,!1,null],["Tasks",[ut(d,ft)],3,2,!1,!1,null]],[["TaskStateChanged",3,1,[d,Ke,Ct]]]),_t=H("OcaCodingManager",3,"\f",1,ce,[["GetAvailableEncodingSchemes",3,1,[],[ut(l,oe)]],["GetAvailableDecodingSchemes",3,2,[],[ut(l,oe)]]],[["AvailableEncodingSchemes",[ut(l,oe)],3,1,!1,!1,null],["AvailableDecodingSchemes",[ut(l,oe)],3,2,!1,!1,null]],[]),Gt=H("OcaDiagnosticManager",3,"\r",1,ce,[["GetLockStatus",3,1,[d],[oe]]],[],[]),vt=a({isConstantLength:!0,encodedLength:function(e){return 4},encodeTo:function(e,t,n){return e.setFloat32(t,+n,!1),t+4},decode:function(e,t){return e.getFloat32(t,!1)}});class Dt extends(G({Input:1,Output:2})){}const Tt=Z(Dt);class It{constructor(e,t){this.Mode=e,this.Index=t}}const Mt=c({Mode:Tt,Index:l},It);class At{constructor(e,t,n){this.Owner=e,this.ID=t,this.Name=n}}const Lt=c({Owner:d,ID:Mt,Name:oe},At),Et=H("OcaWorker",2,"",2,ie,[["GetEnabled",2,1,[],[W]],["SetEnabled",2,2,[W],[]],["AddPort",2,3,[oe,Tt],[Mt]],["DeletePort",2,4,[Mt],[]],["GetPorts",2,5,[],[fe(Lt)]],["GetPortName",2,6,[Mt],[oe]],["SetPortName",2,7,[Mt,oe],[]],["GetLabel",2,8,[],[oe]],["SetLabel",2,9,[oe],[]],["GetOwner",2,10,[],[d]],["GetLatency",2,11,[],[vt]],["SetLatency",2,12,[vt],[]],["GetPath",2,13,[],[fe(oe),fe(d)]]],[["Enabled",[W],2,1,!1,!1,null],["Ports",[fe(Lt)],2,2,!1,!1,null],["Label",[oe],2,3,!1,!1,null],["Owner",[d],2,4,!1,!1,null],["Latency",[vt],2,5,!1,!1,null]],[]);class kt{constructor(e,t){this.ONo=e,this.ClassIdentification=t}}const xt=c({ONo:d,ClassIdentification:Y},kt);class Ut{constructor(e,t){this.MemberObjectIdentification=e,this.ContainerObjectNumber=t}}const Nt=c({MemberObjectIdentification:xt,ContainerObjectNumber:d},Ut);class Rt{constructor(e,t){this.Authority=e,this.ID=t}}const Ft=c({Authority:ue(3),ID:d},Rt);class Bt{constructor(e,t){this.TargetBlockType=e,this.ParData=t}}const jt=c({TargetBlockType:d,ParData:le},Bt);class Vt{constructor(e,t,n,r,s){this.ONo=e,this.ClassIdentification=t,this.ContainerPath=n,this.Role=r,this.Label=s}}const zt=c({ONo:d,ClassIdentification:Y,ContainerPath:fe(d),Role:oe,Label:oe},Vt),qt=he;class Ht{constructor(e,t){this.SourcePort=e,this.SinkPort=t}}const Wt=c({SourcePort:Lt,SinkPort:Lt},Ht);class Kt extends(G({Exact:0,Substring:1,Contains:2,ExactCaseInsensitive:3,SubstringCaseInsensitive:4,ContainsCaseInsensitive:5})){}const Xt=Z(Kt),Yt=H("OcaBlock",3,"",2,Et,[["GetType",3,1,[],[d]],,["ConstructMemberUsingFactory",3,3,[d],[d]],["DeleteMember",3,4,[d],[]],["GetMembers",3,5,[],[fe(xt)]],["GetMembersRecursive",3,6,[],[fe(Nt)]],["AddSignalPath",3,7,[Wt],[l]],["DeleteSignalPath",3,8,[l],[]],["GetSignalPaths",3,9,[],[ut(l,Wt)]],["GetSignalPathsRecursive",3,10,[],[ut(l,Wt)]],["GetMostRecentParamSetIdentifier",3,11,[],[Ke]],["ApplyParamSet",3,12,[],[Ke]],["GetCurrentParamSetData",3,13,[],[jt]],["StoreCurrentParamSetData",3,14,[Ke],[]],["GetGlobalType",3,15,[],[Ft]],["GetONoMap",3,16,[],[ut(d,d)]],["FindObjectsByRole",3,17,[oe,Xt,K,qt],[fe(zt)]],["FindObjectsByRoleRecursive",3,18,[oe,Xt,K,qt],[fe(zt)]],["FindObjectsByPath",3,20,[fe(oe),qt],[fe(zt)]],["FindObjectsByLabelRecursive",3,19,[oe,Xt,K,qt],[fe(zt)]]],[["Type",[d],3,1,!0,!1,null],["Members",[fe(xt)],3,2,!1,!1,null],["SignalPaths",[ut(l,Wt)],3,3,!1,!1,null],["MostRecentParamSetIdentifier",[Ke],3,4,!1,!1,null],["GlobalType",[Ft],3,5,!0,!1,null],["ONoMap",[ut(d,d)],3,6,!0,!1,null]],[]),Qt=H("OcaActuator",3,"",2,Et,[],[],[]);class Jt extends(G({Muted:1,Unmuted:2})){}const Zt=Z(Jt),$t=H("OcaMute",4,"",2,Qt,[["GetState",4,1,[],[Zt]],["SetState",4,2,[Zt],[]]],[["State",[Zt],4,1,!1,!1,null]],[]);class en extends(G({NonInverted:1,Inverted:2})){}const tn=Z(en),nn=H("OcaPolarity",4,"",2,Qt,[["GetState",4,1,[],[tn]],["SetState",4,2,[tn],[]]],[["State",[tn],4,1,!1,!1,null]],[]),rn=H("OcaSwitch",4,"",2,Qt,[["GetPosition",4,1,[],[l,l,l]],["SetPosition",4,2,[l],[]],["GetPositionName",4,3,[l],[oe]],["SetPositionName",4,4,[l,oe],[]],["GetPositionNames",4,5,[],[fe(oe)]],["SetPositionNames",4,6,[fe(oe)],[]],["GetPositionEnabled",4,7,[l],[W]],["SetPositionEnabled",4,8,[l,W],[]],["GetPositionEnableds",4,9,[],[fe(W)]],["SetPositionEnableds",4,10,[fe(W)],[]]],[["Position",[l],4,1,!1,!1,null],["PositionNames",[fe(oe)],4,2,!1,!1,null],["PositionEnableds",[fe(W)],4,3,!1,!1,null]],[]),sn=H("OcaGain",4,"",2,Qt,[["GetGain",4,1,[],[vt,vt,vt]],["SetGain",4,2,[vt],[]]],[["Gain",[vt],4,1,!1,!1,null]],[]),on=H("OcaPanBalance",4,"",2,Qt,[["GetPosition",4,1,[],[vt,vt,vt]],["SetPosition",4,2,[vt],[]],["GetMidpointGain",4,3,[],[vt,vt,vt]],["SetMidpointGain",4,4,[vt],[]]],[["Position",[vt],4,1,!1,!1,null],["MidpointGain",[vt],4,2,!1,!1,null]],[]),an=H("OcaDelay",4,"",2,Qt,[["GetDelayTime",4,1,[],[vt,vt,vt]],["SetDelayTime",4,2,[vt],[]]],[["DelayTime",[vt],4,1,!1,!1,null]],[]);class cn extends(G({Time:1,Distance:2,Samples:3,Microseconds:4,Milliseconds:5,Centimeters:6,Inches:7,Feet:8})){}const ln=Z(cn);class un{constructor(e,t){this.DelayValue=e,this.DelayUnit=t}}const hn=c({DelayValue:vt,DelayUnit:ln},un),dn=H("OcaDelayExtended",5,"",2,an,[["GetDelayValue",5,1,[],[hn,hn,hn]],["SetDelayValue",5,2,[hn],[]],["GetDelayValueConverted",5,3,[ln],[hn]]],[["DelayValue",[hn],5,1,!1,!1,null]],[]),gn=H("OcaFrequencyActuator",4,"\b",2,Qt,[["GetFrequency",4,1,[],[vt,vt,vt]],["SetFrequency",4,2,[vt],[]]],[["Frequency",[vt],4,1,!1,!1,null]],[]),fn=l;class Sn extends(G({Butterworth:1,Bessel:2,Chebyshev:3,LinkwitzRiley:4})){}const pn=Z(Sn);class mn extends(G({HiPass:1,LowPass:2,BandPass:3,BandReject:4,AllPass:5})){}const yn=Z(mn),On=H("OcaFilterClassical",4,"\t",2,Qt,[["GetFrequency",4,1,[],[vt,vt,vt]],["SetFrequency",4,2,[vt],[]],["GetPassband",4,3,[],[yn]],["SetPassband",4,4,[yn],[]],["GetShape",4,5,[],[pn]],["SetShape",4,6,[pn],[]],["GetOrder",4,7,[],[l,l,l]],["SetOrder",4,8,[l],[]],["GetParameter",4,9,[],[vt,vt,vt]],["SetParameter",4,10,[vt],[]],["SetMultiple",4,11,[fn,vt,yn,pn,l,vt],[]]],[["Frequency",[vt],4,1,!1,!1,null],["Passband",[yn],4,2,!1,!1,null],["Shape",[pn],4,3,!1,!1,null],["Order",[l],4,4,!1,!1,null],["Parameter",[vt],4,5,!1,!1,null]],[]);class bn extends(G({None:0,PEQ:1,LowShelv:2,HighShelv:3,LowPass:4,HighPass:5,BandPass:6,AllPass:7,Notch:8,ToneControlLowFixed:9,ToneControlLowSliding:10,ToneControlHighFixed:11,ToneControlHighSliding:12})){}const wn=Z(bn),Cn=H("OcaFilterParametric",4,"\n",2,Qt,[["GetFrequency",4,1,[],[vt,vt,vt]],["SetFrequency",4,2,[vt],[]],["GetShape",4,3,[],[wn]],["SetShape",4,4,[wn],[]],["GetWidthParameter",4,5,[],[vt,vt,vt]],["SetWidthParameter",4,6,[vt],[]],["GetInbandGain",4,7,[],[vt,vt,vt]],["SetInbandGain",4,8,[vt],[]],["GetShapeParameter",4,9,[],[vt,vt,vt]],["SetShapeParameter",4,10,[vt],[]],["SetMultiple",4,11,[fn,vt,wn,vt,vt,vt],[]]],[["Frequency",[vt],4,1,!1,!1,null],["Shape",[wn],4,2,!1,!1,null],["WidthParameter",[vt],4,3,!1,!1,["Q"]],["InbandGain",[vt],4,4,!1,!1,null],["ShapeParameter",[vt],4,5,!1,!1,null]],[]),Pn=H("OcaFilterPolynomial",4,"\v",2,Qt,[["GetCoefficients",4,1,[],[fe(vt),fe(vt)]],["SetCoefficients",4,2,[fe(vt),fe(vt)],[]],["GetSampleRate",4,3,[],[vt,vt,vt]],["SetSampleRate",4,4,[vt],[]],["GetMaxOrder",4,5,[],[Q]]],[["A",[fe(vt)],4,1,!1,!1,null],["B",[fe(vt)],4,2,!1,!1,null],["SampleRate",[vt],4,3,!1,!1,null],["MaxOrder",[Q],4,4,!0,!1,null]],[]),_n=H("OcaFilterFIR",4,"\f",2,Qt,[["GetLength",4,1,[],[d,d,d]],["GetCoefficients",4,2,[],[fe(vt)]],["SetCoefficients",4,3,[fe(vt)],[]],["GetSampleRate",4,4,[],[vt,vt,vt]],["SetSampleRate",4,5,[vt],[]]],[["Length",[d],4,1,!1,!1,null],["Coefficients",[fe(vt)],4,2,!1,!1,null],["SampleRate",[vt],4,3,!1,!1,null]],[]);class Gn{constructor(e,t,n){this.Frequency=e,this.Amplitude=t,this.Phase=n}}const vn=c({Frequency:fe(vt),Amplitude:fe(vt),Phase:fe(vt)},Gn),Dn=H("OcaFilterArbitraryCurve",4,"\r",2,Qt,[["GetTransferFunction",4,1,[],[vn]],["SetTransferFunction",4,2,[vn],[]],["GetSampleRate",4,3,[],[vt,vt,vt]],["SetSampleRate",4,4,[vt],[]],["GetTFMinLength",4,5,[],[l]],["GetTFMaxLength",4,6,[],[l]]],[["TransferFunction",[vn],4,1,!1,!1,null],["SampleRate",[vt],4,2,!1,!1,null],["TFMinLength",[l],4,3,!1,!1,null],["TFMaxLength",[l],4,4,!1,!1,null]],[]);class Tn{constructor(e,t){this.Value=e,this.Ref=t}}const In=c({Value:vt,Ref:vt},Tn);class Mn extends(G({None:0,Compress:1,Limit:2,Expand:3,Gate:4})){}const An=Z(Mn);class Ln extends(G({None:0,RMS:1,Peak:2})){}const En=Z(Ln);class kn extends(G({dBu:0,dBV:1,V:2})){}const xn=Z(kn),Un=H("OcaDynamics",4,"",2,Qt,[["GetTriggered",4,1,[],[W]],["GetDynamicGain",4,2,[],[vt]],["GetFunction",4,3,[],[An]],["SetFunction",4,4,[An],[]],["GetRatio",4,5,[],[vt,vt,vt]],["SetRatio",4,6,[vt],[]],["GetThreshold",4,7,[],[In,vt,vt]],["SetThreshold",4,8,[In],[]],["GetThresholdPresentationUnits",4,9,[],[xn]],["SetThresholdPresentationUnits",4,10,[xn],[]],["GetDetectorLaw",4,11,[],[En]],["SetDetectorLaw",4,12,[En],[]],["GetAttackTime",4,13,[],[vt,vt,vt]],["SetAttackTime",4,14,[vt],[]],["GetReleaseTime",4,15,[],[vt,vt,vt]],["SetReleaseTime",4,16,[vt],[]],["GetHoldTime",4,17,[],[vt,vt,vt]],["SetHoldTime",4,18,[vt],[]],["GetDynamicGainFloor",4,19,[],[vt,vt,vt]],["SetDynamicGainFloor",4,20,[vt],[]],["GetDynamicGainCeiling",4,21,[],[vt,vt,vt]],["SetDynamicGainCeiling",4,22,[vt],[]],["GetKneeParameter",4,23,[],[vt,vt,vt]],["SetKneeParameter",4,24,[vt],[]],["GetSlope",4,25,[],[vt,vt,vt]],["SetSlope",4,26,[vt],[]],["SetMultiple",4,27,[fn,An,In,xn,En,vt,vt,vt,vt,vt,vt,vt],[]]],[["Triggered",[W],4,1,!1,!1,null],["DynamicGain",[vt],4,2,!1,!1,null],["Function",[An],4,3,!1,!1,null],["Ratio",[vt],4,4,!1,!1,null],["Threshold",[In],4,5,!1,!1,null],["ThresholdPresentationUnits",[xn],4,6,!1,!1,null],["DetectorLaw",[En],4,7,!1,!1,null],["AttackTime",[vt],4,8,!1,!1,null],["ReleaseTime",[vt],4,9,!1,!1,null],["HoldTime",[vt],4,10,!1,!1,null],["DynamicGainCeiling",[vt],4,11,!1,!1,null],["DynamicGainFloor",[vt],4,12,!1,!1,null],["KneeParameter",[vt],4,13,!1,!1,null],["Slope",[vt],4,14,!1,!1,null]],[]),Nn=H("OcaDynamicsDetector",4,"",2,Qt,[["GetLaw",4,1,[],[En]],["SetLaw",4,2,[En],[]],["GetAttackTime",4,3,[],[vt,vt,vt]],["SetAttackTime",4,4,[vt],[]],["GetReleaseTime",4,5,[],[vt,vt,vt]],["SetReleaseTime",4,6,[vt],[]],["GetHoldTime",4,7,[],[vt,vt,vt]],["SetHoldTime",4,8,[vt],[]],["SetMultiple",4,9,[fn,En,vt,vt,vt],[]]],[["Law",[En],4,1,!1,!1,null],["AttackTime",[vt],4,2,!1,!1,null],["ReleaseTime",[vt],4,3,!1,!1,null],["HoldTime",[vt],4,4,!1,!1,null]],[]),Rn=H("OcaDynamicsCurve",4,"",2,Qt,[["GetNSegments",4,1,[],[Q,Q,Q]],["SetNSegments",4,2,[Q],[]],["GetThreshold",4,3,[],[fe(In),vt,vt]],["SetThreshold",4,4,[fe(In)],[]],["GetSlope",4,5,[],[fe(vt),fe(vt),fe(vt)]],["SetSlope",4,6,[fe(vt)],[]],["GetKneeParameter",4,7,[],[fe(vt),fe(vt),fe(vt)]],["SetKneeParameter",4,8,[fe(vt)],[]],["GetDynamicGainCeiling",4,9,[],[vt,vt,vt]],["SetDynamicGainCeiling",4,10,[vt],[]],["GetDynamicGainFloor",4,11,[],[vt,vt,vt]],["SetDynamicGainFloor",4,12,[vt],[]],["SetMultiple",4,13,[fn,Q,fe(In),fe(vt),fe(vt),vt,vt],[]]],[["NSegments",[Q],4,1,!1,!1,null],["Threshold",[fe(In)],4,2,!1,!1,null],["Slope",[fe(vt)],4,3,!1,!1,null],["KneeParameter",[fe(vt)],4,4,!1,!1,null],["DynamicGainFloor",[vt],4,5,!1,!1,null],["DynamicGainCeiling",[vt],4,6,!1,!1,null]],[]);class Fn extends(G({Linear:1,Logarithmic:2,None:0})){}const Bn=Z(Fn);class jn extends(G({None:0,DC:1,Sine:2,Square:3,Impulse:4,NoisePink:5,NoiseWhite:6,PolarityTest:7})){}const Vn=Z(jn),zn=H("OcaSignalGenerator",4,"",2,Qt,[["GetFrequency1",4,1,[],[vt,vt,vt]],["SetFrequency1",4,2,[vt],[]],["GetFrequency2",4,3,[],[vt,vt,vt]],["SetFrequency2",4,4,[vt],[]],["GetLevel",4,5,[],[vt,vt,vt]],["SetLevel",4,6,[vt],[]],["GetWaveform",4,7,[],[Vn]],["SetWaveform",4,8,[Vn],[]],["GetSweepType",4,9,[],[Bn]],["SetSweepType",4,10,[Bn],[]],["GetSweepTime",4,11,[],[vt,vt,vt]],["SetSweepTime",4,12,[vt],[]],["GetSweepRepeat",4,13,[],[W]],["SetSweepRepeat",4,14,[W],[]],["GetGenerating",4,15,[],[W]],["Start",4,16,[],[]],["Stop",4,17,[],[]],["SetMultiple",4,18,[fn,vt,vt,vt,Vn,Bn,vt,W],[]]],[["Frequency1",[vt],4,1,!1,!1,null],["Frequency2",[vt],4,2,!1,!1,null],["Level",[vt],4,3,!1,!1,null],["Waveform",[Vn],4,4,!1,!1,null],["SweepType",[Bn],4,5,!1,!1,null],["SweepTime",[vt],4,6,!1,!1,null],["SweepRepeat",[W],4,7,!1,!1,null],["Generating",[W],4,8,!1,!1,null]],[]),qn=H("OcaSignalInput",4,"",2,Qt,[],[],[]),Hn=H("OcaSignalOutput",4,"",2,Qt,[],[],[]),Wn=H("OcaTemperatureActuator",4,"",2,Qt,[["GetTemperature",4,1,[],[vt,vt,vt]],["SetTemperature",4,2,[vt],[]]],[["Temperature",[vt],4,1,!1,!1,null]],[]),Kn=H("OcaIdentificationActuator",4,"",2,Qt,[["GetActive",4,1,[],[W]],["SetActive",4,2,[W],[]]],[["Active",[W],4,1,!1,!1,null]],[]),Xn=H("OcaSummingPoint",4,"",1,Qt,[],[],[]),Yn=H("OcaBasicActuator",4,"",2,Qt,[],[],[]),Qn=H("OcaBooleanActuator",5,"",2,Yn,[["GetSetting",5,1,[],[W]],["SetSetting",5,2,[W],[]]],[["Setting",[W],5,1,!1,!1,null]],[]),Jn=a({isConstantLength:!0,encodedLength:function(e){return 1},encodeTo:function(e,t,n){return e.setInt8(t,0|n),t+1},decode:function(e,t){return e.getInt8(t)}}),Zn=H("OcaInt8Actuator",5,"",2,Yn,[["GetSetting",5,1,[],[Jn,Jn,Jn]],["SetSetting",5,2,[Jn],[]]],[["Setting",[Jn],5,1,!1,!1,null]],[]),$n=a({isConstantLength:!0,encodedLength:function(e){return 2},encodeTo:function(e,t,n){return e.setInt16(t,0|n,!1),t+2},decode:function(e,t){return e.getInt16(t,!1)}}),er=H("OcaInt16Actuator",5,"",2,Yn,[["GetSetting",5,1,[],[$n,$n,$n]],["SetSetting",5,2,[$n],[]]],[["Setting",[$n],5,1,!1,!1,null]],[]),tr=a({isConstantLength:!0,encodedLength:function(e){return 4},encodeTo:function(e,t,n){return e.setInt32(t,0|n,!1),t+4},decode:function(e,t){return e.getInt32(t,!1)}}),nr=H("OcaInt32Actuator",5,"",2,Yn,[["GetSetting",5,1,[],[tr,tr,tr]],["SetSetting",5,2,[tr],[]]],[["Setting",[tr],5,1,!1,!1,null]],[]);function rr(){if(!et)throw new Error("Missing BigInt support")}const sr=a({isConstantLength:!0,encodedLength:function(e){return 8},encodeTo:function(e,t,n){if(rr(),!(n>=rt&&n<=nt))throw new TypeError("Int64 out of range.");return e.setBigInt64(t,BigInt(n),!1),t+8},decode:function(e,t){rr();const n=e.getBigInt64(t,!1);return n>=Number.MIN_SAFE_INTEGER&&n<=Number.MAX_SAFE_INTEGER?Number(n):n}}),or=H("OcaInt64Actuator",5,"",2,Yn,[["GetSetting",5,1,[],[sr,sr,sr]],["SetSetting",5,2,[sr],[]]],[["Setting",[sr],5,1,!1,!1,null]],[]),ir=H("OcaUint8Actuator",5,"",2,Yn,[["GetSetting",5,1,[],[Q,Q,Q]],["SetSetting",5,2,[Q],[]]],[["Setting",[Q],5,1,!1,!1,null]],[]),ar=H("OcaUint16Actuator",5,"",2,Yn,[["GetSetting",5,1,[],[l,l,l]],["SetSetting",5,2,[l],[]]],[["Setting",[l],5,1,!1,!1,null]],[]),cr=H("OcaUint32Actuator",5,"\b",2,Yn,[["GetSetting",5,1,[],[d,d,d]],["SetSetting",5,2,[d],[]]],[["Setting",[d],5,1,!1,!1,null]],[]),lr=H("OcaUint64Actuator",5,"\t",2,Yn,[["GetSetting",5,1,[],[it,it,it]],["SetSetting",5,2,[it],[]]],[["Setting",[it],5,1,!1,!1,null]],[]),ur=H("OcaFloat32Actuator",5,"\n",2,Yn,[["GetSetting",5,1,[],[vt,vt,vt]],["SetSetting",5,2,[vt],[]]],[["Setting",[vt],5,1,!1,!1,null]],[]),hr=a({isConstantLength:!0,encodedLength:function(e){return 8},encodeTo:function(e,t,n){return e.setFloat64(t,+n,!1),t+8},decode:function(e,t){return e.getFloat64(t,!1)}}),dr=H("OcaFloat64Actuator",5,"\v",2,Yn,[["GetSetting",5,1,[],[hr,hr,hr]],["SetSetting",5,2,[hr],[]]],[["Setting",[hr],5,1,!1,!1,null]],[]),gr=H("OcaStringActuator",5,"\f",2,Yn,[["GetSetting",5,1,[],[oe]],["SetSetting",5,2,[oe],[]],["GetMaxLen",5,3,[],[l]]],[["Setting",[oe],5,1,!1,!1,null],["MaxLen",[l],5,2,!0,!1,null]],[]);function fr(e){return e+7>>3}function Sr(e,t,n){const r=new Array(n),s=fr(n),o=new Uint8Array(e.buffer,e.byteOffset+t,s);for(let e=0;e<n;e++)r[e]=!!(o[e>>3]&128>>(7&e));return r}const pr=a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e))throw new TypeError("Expected Array.");const t=e.length;if(t>65535)throw new Error("Array too long for OcaBlob OCP.1 encoding.");return 2+(t+7>>3)},encodeTo:function(e,t,n){const r=n.length;return e.setUint16(t,r),function(e,t,n){const r=n.length,s=fr(r),o=new Uint8Array(e.buffer,e.byteOffset+t,s);for(let e=0,t=0;t<s;t++){let s=0;for(let t=0;t<8&&e<r;t++,e++)n[e]&&(s|=128>>t);o[t]=s}return t+s}(e,t+=2,n)},decodeFrom:function(e,t){const n=e.getUint16(t);return[(t+=2)+fr(n),Sr(e,t,n)]},decodeLength:function(e,t){return t+2+fr(e.getUint16(t))}}),mr=H("OcaBitstringActuator",5,"\r",2,Yn,[["GetNrBits",5,1,[],[l]],["GetBit",5,2,[l],[W]],["SetBit",5,3,[l,W],[]],["GetBitstring",5,4,[],[pr]],["SetBitstring",5,5,[pr],[]]],[["Bitstring",[pr],5,1,!1,!1,null]],[]);class yr extends(G({Unknown:0,Valid:1,Underrange:2,Overrange:3,Error:4})){}const Or=Z(yr),br=H("OcaSensor",3,"",2,Et,[["GetReadingState",3,1,[],[Or]]],[["ReadingState",[Or],3,1,!1,!1,null]],[]),wr=H("OcaLevelSensor",4,"",2,br,[["GetReading",4,1,[],[vt,vt,vt]]],[["Reading",[vt],4,1,!1,!1,null]],[]);class Cr extends(G({VU:1,StandardVU:2,PPM1:3,PPM2:4,LKFS:5,RMS:6,Peak:7,ProprietaryValueBase:128})){}const Pr=Z(Cr),_r=H("OcaAudioLevelSensor",5,"",2,wr,[["GetLaw",5,1,[],[Pr]],["SetLaw",5,2,[Pr],[]]],[["Law",[Pr],5,1,!1,!1,null]],[]),Gr=H("OcaTimeIntervalSensor",4,"",2,br,[["GetReading",4,1,[],[vt,vt,vt]]],[["Reading",[vt],4,1,!1,!1,null]],[]),vr=H("OcaFrequencySensor",4,"",2,br,[["GetReading",4,1,[],[vt,vt,vt]]],[["Reading",[vt],4,1,!1,!1,null]],[]),Dr=H("OcaTemperatureSensor",4,"",2,br,[["GetReading",4,1,[],[vt,vt,vt]]],[["Reading",[vt],4,1,!1,!1,null]],[]),Tr=H("OcaIdentificationSensor",4,"",2,br,[],[],[["Identify",4,1,[]]]),Ir=H("OcaVoltageSensor",4,"",1,br,[["GetReading",4,1,[],[vt,vt,vt]]],[["Reading",[vt],4,1,!1,!1,null]],[]),Mr=H("OcaCurrentSensor",4,"\b",1,br,[["GetReading",4,1,[],[vt,vt,vt]]],[["Reading",[vt],4,1,!1,!1,null]],[]);class Ar{constructor(e,t){this.Magnitude=e,this.Phase=t}}const Lr=c({Magnitude:vt,Phase:vt},Ar),Er=H("OcaImpedanceSensor",4,"\t",1,br,[["GetReading",4,1,[],[Lr,Lr,Lr]]],[["Reading",[Lr],4,1,!1,!1,null]],[]),kr=H("OcaGainSensor",4,"\n",1,br,[["GetReading",4,1,[],[vt,vt,vt]]],[["Reading",[vt],4,1,!1,!1,null]],[]),xr=H("OcaBasicSensor",4,"",2,br,[],[],[]),Ur=H("OcaBooleanSensor",5,"",2,xr,[["GetReading",5,1,[],[W]]],[["Reading",[W],5,1,!1,!1,null]],[]),Nr=H("OcaInt8Sensor",5,"",2,xr,[["GetReading",5,1,[],[Jn,Jn,Jn]]],[["Reading",[Jn],5,1,!1,!1,null]],[]),Rr=H("OcaInt16Sensor",5,"",2,xr,[["GetReading",5,1,[],[$n,$n,$n]]],[["Reading",[$n],5,1,!1,!1,null]],[]),Fr=H("OcaInt32Sensor",5,"",2,xr,[["GetReading",5,1,[],[tr,tr,tr]]],[["Reading",[tr],5,1,!1,!1,null]],[]),Br=H("OcaInt64Sensor",5,"",2,xr,[["GetReading",5,1,[],[sr,sr,sr]]],[["Reading",[sr],5,1,!1,!1,null]],[]),jr=H("OcaUint8Sensor",5,"",2,xr,[["GetReading",5,1,[],[Q,Q,Q]]],[["Reading",[Q],5,1,!1,!1,null]],[]),Vr=H("OcaUint16Sensor",5,"",2,xr,[["GetReading",5,1,[],[l,l,l]]],[["Reading",[l],5,1,!1,!1,null]],[]),zr=H("OcaUint32Sensor",5,"\b",2,xr,[["GetReading",5,1,[],[d,d,d]]],[["Reading",[d],5,1,!1,!1,null]],[]),qr=H("OcaFloat32Sensor",5,"\n",2,xr,[["GetReading",5,1,[],[vt,vt,vt]]],[["Reading",[vt],5,1,!1,!1,null]],[]),Hr=H("OcaFloat64Sensor",5,"\v",2,xr,[["GetReading",5,1,[],[hr,hr,hr]]],[["Reading",[hr],5,1,!1,!1,null]],[]),Wr=H("OcaStringSensor",5,"\f",2,xr,[["GetString",5,1,[],[oe]],["GetMaxLen",5,2,[],[l]],["SetMaxLen",5,3,[l],[]]],[["String",[oe],5,1,!1,!1,null],["MaxLen",[l],5,2,!1,!1,null]],[]),Kr=H("OcaBitstringSensor",5,"\r",2,xr,[["GetNrBits",5,1,[],[l]],["GetBit",5,2,[l],[Q]],["GetBitString",5,3,[],[pr]]],[["BitString",[pr],5,1,!1,!1,null]],[]),Xr=H("OcaUint64Sensor",5,"\t",2,xr,[["GetReading",5,1,[],[it,it,it]]],[["Reading",[it],5,1,!1,!1,null]],[]);class Yr{constructor(e,t){this.POno=e,this.ClassIdentification=t}}const Qr=c({POno:d,ClassIdentification:Y},Yr);class Jr{constructor(e,t){this.Mode=e,this.Index=t}}const Zr=c({Mode:Tt,Index:l},Jr);class $r{constructor(e,t,n){this.Owner=e,this.ProtoID=t,this.Name=n}}const es=c({Owner:d,ProtoID:Zr,Name:oe},$r);class ts{constructor(e,t){this.SourceProtoPort=e,this.SinkProtoPort=t}}const ns=c({SourceProtoPort:es,SinkProtoPort:es},ts),rs=H("OcaBlockFactory",3,"",2,Et,[["DefineProtoPort",3,1,[oe,Tt],[Zr]],["UndefineProtoPort",3,2,[Zr],[]],["GetProtoPorts",3,3,[],[fe(es)]],,["DefineProtoMemberUsingFactory",3,5,[d],[d]],["UndefineProtoMember",3,6,[d],[]],["GetProtoMembers",3,7,[],[fe(Qr)]],["DefineProtoSignalPath",3,8,[ns],[l]],["UndefineProtoSignalPath",3,9,[],[l]],["GetProtoSignalPaths",3,10,[],[ut(l,ns)]],["GetGlobalType",3,11,[],[Ft]],["SetGlobalType",3,12,[Ft],[]]],[["ProtoPorts",[fe(es)],3,1,!1,!1,null],["ProtoMembers",[fe(Qr)],3,2,!1,!1,null],["ProtoSignalPaths",[ut(l,ns)],3,3,!1,!1,null],["GlobalType",[Ft],3,4,!1,!1,null]],[]);function ss(e){return e.isConstantLength?function(e){const t=e.encodedLength(void 0),n=e.encodeTo,r=e.decode;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!ge(e))throw new TypeError("Expected array.");const n=e.length;if(0===n)return 4;if(!Array.isArray(e[0])&&!ge(e[0]))throw new TypeError("Expected array.");const r=e[0].length;if(n>65535||r>65535)throw new Error("Array too long for OcaList2D OCP.1 encoding");return 4+n*r*t},encodeTo:function(e,t,r){const s=r.length,o=0===s?0:r[0].length;e.setUint16(t,s),t+=2,e.setUint16(t,o),t+=2;for(let i=0;i<s;i++){const s=r[i];for(let r=0;r<o;r++)t=n(e,t,s[r])}return t},decodeFrom:function(e,n){const s=e.getUint16(n);n+=2;const o=e.getUint16(n);n+=2;const i=new Array(s).fill().map(()=>new Array(o));for(let a=0;a<s;a++){const s=i[a];for(let i=0;i<o;i++)s[i]=r(e,n),n+=t}return[n,i]},decodeLength:function(e,n){const r=e.getUint16(n);n+=2;const s=e.getUint16(n);return(n+=2)+r*s*t}})}(e):function(e){const t=e.encodedLength,n=e.encodeTo,r=e.decodeFrom,s=e.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!ge(e))throw new TypeError("Expected array.");const n=e.length;if(0===n)return 4;if(!Array.isArray(e[0])&&!ge(e[0]))throw new TypeError("Expected array.");const r=e[0].length;if(n>65535||r>65535)throw new Error("Array too long for OcaList2D OCP.1 encoding");let s=4;for(let o=0;o<n;o++){const n=e[o];for(let e=0;e<r;e++)s+=t(n[e])}return s},encodeTo:function(e,t,r){const s=r.length,o=0===s?0:r[0].length;e.setUint16(t,s),t+=2,e.setUint16(t,o),t+=2;for(let i=0;i<s;i++){const s=r[i];for(let r=0;r<o;r++)t=n(e,t,s[r])}return t},decodeFrom:function(e,t){const n=e.getUint16(t);t+=2;const s=e.getUint16(t);t+=2;const o=new Array(n).fill().map(()=>new Array(s));for(let i=0;i<n;i++){const n=o[i];for(let o=0;o<s;o++){let s;[t,s]=r(e,t),n[o]=s}}return[t,o]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;const r=e.getUint16(t);t+=2;for(let o=0;o<n;o++)for(let n=0;n<r;n++)t=s(e,t);return t}})}(e)}const os=H("OcaMatrix",3,"",2,Et,[["GetCurrentXY",3,1,[],[l,l]],["SetCurrentXY",3,2,[l,l],[]],["GetSize",3,3,[],[l,l,l,l,l,l]],["SetSize",3,4,[l,l],[]],["GetMembers",3,5,[],[ss(d)]],["SetMembers",3,6,[ss(d)],[]],["GetMember",3,7,[l,l],[d]],["SetMember",3,8,[l,l,d],[]],["GetProxy",3,9,[],[d]],["SetProxy",3,10,[d],[]],["GetPortsPerRow",3,11,[],[Q]],["SetPortsPerRow",3,12,[Q],[]],["GetPortsPerColumn",3,13,[],[Q]],["SetPortsPerColumn",3,14,[Q],[]],["SetCurrentXYLock",3,15,[l,l],[]],["UnlockCurrent",3,16,[],[]]],[["X",[l],3,1,!1,!1,null],["Y",[l],3,2,!1,!1,null],["xSize",[l],3,3,!1,!1,null],["ySize",[l],3,4,!1,!1,null],["Members",[ss(d)],3,5,!1,!1,null],["Proxy",[d],3,6,!1,!1,null],["PortsPerRow",[Q],3,7,!1,!1,null],["PortsPerColumn",[Q],3,8,!1,!1,null]],[]),is=H("OcaAgent",2,"",2,ie,[["GetLabel",2,1,[],[oe]],["SetLabel",2,2,[oe],[]],["GetOwner",2,3,[],[d]],["GetPath",2,4,[],[fe(oe),fe(d)]]],[["Label",[oe],2,1,!1,!1,null],["Owner",[d],2,2,!1,!1,null]],[]);class as{constructor(e,t){this.HostID=e,this.ONo=t}}const cs=c({HostID:le,ONo:d},as);class ls{constructor(e,t,n){this.Index=e,this.ObjectPath=t,this.Online=n}}const us=c({Index:l,ObjectPath:cs,Online:W},ls);class hs{constructor(e,t){this.GroupIndex=e,this.CitizenIndex=t}}const ds=c({GroupIndex:l,CitizenIndex:l},hs);class gs{constructor(e,t,n){this.Index=e,this.Name=t,this.ProxyONo=n}}const fs=c({Index:l,Name:oe,ProxyONo:d},gs);class Ss extends(G({MasterSlave:1,PeerToPeer:2})){}const ps=Z(Ss);class ms extends(G({citizenAdded:1,citizenDeleted:2,citizenConnectionLost:3,citizenConnectionReEstablished:4,citizenError:5,enrollment:6,unEnrollment:7})){}const ys=Z(ms),Os=H("OcaGrouper",3,"",2,is,[["AddGroup",3,1,[oe],[l,d]],["DeleteGroup",3,2,[l],[]],["GetGroupCount",3,3,[],[l]],["GetGroupList",3,4,[],[fe(fs)]],["AddCitizen",3,5,[us],[l]],["DeleteCitizen",3,6,[l],[]],["GetCitizenCount",3,7,[],[l]],["GetCitizenList",3,8,[],[fe(us)]],["GetEnrollment",3,9,[ds],[W]],["SetEnrollment",3,10,[ds,W],[]],["GetGroupMemberList",3,11,[l],[fe(us)]],["GetActuatorOrSensor",3,12,[],[W]],["SetActuatorOrSensor",3,13,[W],[]],["GetMode",3,14,[],[ps]],["SetMode",3,15,[ps],[]]],[["ActuatorOrSensor",[W],3,1,!1,!1,null],["Groups",[fe(fs)],3,2,!1,!1,["GroupList"]],["Citizens",[fe(us)],3,3,!1,!1,["CitizenList"]],["Enrollments",[fe(ds)],3,4,!1,!1,["EnrollmentList"]],["Mode",[ps],3,5,!1,!1,null]],[["StatusChange",3,1,[l,l,ys]]]);class bs extends(G({None:0,OcaBoolean:1,OcaInt8:2,OcaInt16:3,OcaInt32:4,OcaInt64:5,OcaUint8:6,OcaUint16:7,OcaUint32:8,OcaUint64:9,OcaFloat32:10,OcaFloat64:11,OcaString:12,OcaBitstring:13,OcaBlob:14,OcaBlobFixedLen:15,OcaBit:16})){}const ws=Z(bs);class Cs{constructor(e,t,n,r){this.PropertyID=e,this.BaseDataType=t,this.GetterMethodID=n,this.SetterMethodID=r}}const Ps=c({PropertyID:ee,BaseDataType:ws,GetterMethodID:Ae,SetterMethodID:Ae},Cs);class _s{constructor(e,t){this.ONo=e,this.Descriptor=t}}const Gs=c({ONo:d,Descriptor:Ps},_s);class vs extends(G({Enable:1,Start:2,Halt:3})){}const Ds=Z(vs);class Ts extends(G({Linear:1,ReverseLinear:2,Sine:3,Exponential:4})){}const Is=Z(Ts);class Ms extends(G({NotInitialized:1,Iniitialized:2,Scheduled:3,Enabled:4,Ramping:5})){}const As=Z(Ms),Ls=H("OcaRamper",3,"",2,is,[["Control",3,1,[Ds],[]],["GetState",3,2,[],[As]],["GetRampedProperty",3,3,[],[Gs]],["SetRampedProperty",3,4,[Gs],[]],["GetTimeMode",3,5,[],[dt]],["SetTimeMode",3,6,[dt],[]],["GetStartTime",3,7,[],[it]],["SetStartTime",3,8,[it],[]],["GetDuration",3,9,[],[vt,vt,vt]],["SetDuration",3,10,[vt],[]],["GetInterpolationLaw",3,11,[],[Is]],["SetInterpolationLaw",3,12,[Is],[]],["GetGoal",3,13,[],[hr]],["SetGoal",3,14,[hr],[]]],[["State",[As],3,1,!1,!1,null],["RampedProperty",[Gs],3,2,!1,!1,null],["TimeMode",[dt],3,3,!1,!1,null],["StartTime",[it],3,4,!1,!1,null],["Duration",[vt],3,5,!1,!1,null],["InterpolationLaw",[Is],3,6,!1,!1,null],["Goal",[hr],3,7,!1,!1,null]],[]);class Es extends(G({NotTriggered:0,Triggered:1})){}const ks=Z(Es);class xs extends(G({None:0,Equality:1,Inequality:2,GreaterThan:3,GreaterThanOrEqual:4,LessThan:5,LessThanOrEqual:6})){}const Us=Z(xs),Ns=H("OcaNumericObserver",3,"",2,is,[["GetLastObservation",3,1,[],[hr]],["GetState",3,2,[],[ks]],["GetObservedProperty",3,3,[],[Gs]],["SetObservedProperty",3,4,[Gs],[]],["GetThreshold",3,5,[],[hr]],["SetThreshold",3,6,[hr],[]],["GetOperator",3,7,[],[Us]],["SetOperator",3,8,[Us],[]],["GetTwoWay",3,9,[],[W]],["SetTwoWay",3,10,[W],[]],["GetHysteresis",3,11,[],[hr]],["SetHysteresis",3,12,[hr],[]],["GetPeriod",3,13,[],[vt]],["SetPeriod",3,14,[vt],[]]],[["State",[ks],3,1,!1,!1,null],["ObservedProperty",[Gs],3,2,!1,!1,null],["Threshold",[hr],3,3,!1,!1,null],["Operator",[Us],3,4,!1,!1,null],["TwoWay",[W],3,5,!1,!1,null],["Hysteresis",[hr],3,6,!1,!1,null],["Period",[vt],3,7,!1,!1,null]],[["Observation",3,1,[f,hr]]]);class Rs extends(G({None:0,ReadOnly:1,ReadExpand:2,Full:3})){}const Fs=Z(Rs);class Bs{constructor(e,t,n,r,s,o){this.Name=e,this.VolType=t,this.Access=n,this.Version=r,this.Creator=s,this.UpDate=o}}const js=c({Name:oe,VolType:Ye,Access:Fs,Version:d,Creator:oe,UpDate:ct},Bs);class Vs{constructor(e,t){this.Metadata=e,this.Data=t}}const zs=c({Metadata:js,Data:le},Vs),qs=H("OcaLibrary",3,"",2,is,[["AddVolume",3,1,[zs],[d]],["ReplaceVolume",3,2,[d,zs],[]],["DeleteVolume",3,3,[d],[]],["GetVolume",3,4,[d],[zs]],["GetVolumeCount",3,5,[],[l]],["GetVolumes",3,6,[],[ut(d,zs)]],["GetAccess",3,7,[],[Fs]],["SetAccess",3,8,[Fs],[]]],[["VolumeType",[Ye],3,1,!1,!1,null],["Access",[Fs],3,2,!1,!1,null],["Volumes",[ut(d,zs)],3,3,!1,!1,null]],[["OcaLibVolChanged",3,1,[d,$]]]);class Hs extends(G({Unspecified:1,Internal:2,External:3})){}const Ws=Z(Hs);class Ks extends(G({Off:0,Unavailable:1,Available:2,Active:3})){}const Xs=Z(Ks);class Ys extends(G({None:0,Mains:1,Battery:2,Phantom:3,Solar:4})){}const Qs=Z(Ys),Js=H("OcaPowerSupply",3,"",3,is,[["GetType",3,1,[],[Qs]],["GetModelInfo",3,2,[],[oe]],["GetState",3,3,[],[Xs]],["SetState",3,4,[Xs],[]],["GetCharging",3,5,[],[W]],["GetLoadFractionAvailable",3,6,[],[vt]],["GetStorageFractionAvailable",3,7,[],[vt]],["GetLocation",3,8,[],[Ws]]],[["Type",[Qs],3,1,!1,!1,null],["ModelInfo",[oe],3,2,!1,!1,null],["State",[Xs],3,3,!1,!1,null],["Charging",[W],3,4,!1,!1,null],["LoadFractionAvailable",[vt],3,5,!1,!1,null],["StorageFractionAvailable",[vt],3,6,!1,!1,null],["Location",[Ws],3,7,!0,!1,null]],[]),Zs=H("OcaEventHandler",3,"\b",2,is,[["OnEvent",3,1,[le,f],[]]],[],[]),$s=H("OcaNumericObserverList",3,"\t",2,is,[["GetLastObservation",3,1,[],[fe(hr)]],["GetState",3,2,[],[ks]],["GetObservedProperties",3,3,[],[fe(Gs)]],["SetObservedProperties",3,4,[fe(Gs)],[]],["GetThreshold",3,5,[],[hr]],["SetThreshold",3,6,[hr],[]],["GetOperator",3,7,[],[Us]],["SetOperator",3,8,[Us],[]],["GetTwoWay",3,9,[],[W]],["SetTwoWay",3,10,[W],[]],["GetHysteresis",3,11,[],[hr]],["SetHysteresis",3,12,[hr],[]],["GetPeriod",3,13,[],[vt]],["SetPeriod",3,14,[vt],[]]],[["State",[ks],3,1,!1,!1,null],["ObservedProperties",[fe(Gs)],3,2,!1,!1,null],["Threshold",[hr],3,3,!1,!1,null],["Operator",[Us],3,4,!1,!1,null],["TwoWay",[W],3,5,!1,!1,null],["Hysteresis",[hr],3,6,!1,!1,null],["Period",[vt],3,7,!1,!1,null]],[["Observation",3,1,[f,fe(hr)]]]);class eo extends(G({Unavailable:0,Available:1})){}const to=Z(eo);class no{constructor(e,t,n,r){this.NominalRate=e,this.PullRange=t,this.Accuracy=n,this.JitterMax=r}}const ro=c({NominalRate:vt,PullRange:vt,Accuracy:vt,JitterMax:vt},no),so=H("OcaMediaClock3",3,"",1,is,[["GetAvailability",3,1,[],[to]],["SetAvailability",3,2,[to],[]],["GetCurrentRate",3,3,[],[ro,d]],["SetCurrentRate",3,4,[ro,d],[]],["GetOffset",3,5,[],[ct]],["SetOffset",3,6,[ct],[]],["GetSupportedRates",3,7,[],[ut(d,fe(ro))]]],[["Availability",[to],3,1,!1,!1,null],["TimeSourceONo",[d],3,2,!1,!1,null],["Offset",[ct],3,3,!1,!1,null],["CurrentRate",[ro],3,4,!1,!1,null],["SupportedRates",[ut(d,fe(ro))],3,5,!1,!1,null]],[]);class oo extends(G({Undefined:0,None:1,Private:2,NTP:3,SNTP:4,IEEE1588_2002:5,IEEE1588_2008:6,IEEE_AVB:7,AES11:8,Genlock:9})){}const io=Z(oo);class ao extends(G({Undefined:0,Local:1,Private:2,GPS:3,Galileo:4,GLONASS:5})){}const co=Z(ao);class lo extends(G({Unavailable:0,Available:1})){}const uo=Z(lo);class ho extends(G({Undefined:0,Unsynchronized:1,Synchronizing:2,Synchronized:3})){}const go=Z(ho),fo=H("OcaTimeSource",3,"",1,is,[["GetAvailability",3,1,[],[uo]],["GetProtocol",3,2,[],[io]],["SetProtocol",3,3,[io],[]],["GetParameters",3,4,[],[oe]],["SetParameters",3,5,[oe],[]],["GetReferenceType",3,6,[],[co]],["SetReferenceType",3,7,[co],[]],["GetReferenceID",3,8,[],[oe]],["SetReferenceID",3,9,[oe],[]],["GetSyncStatus",3,10,[],[go]],["Reset",3,11,[],[]]],[["Availability",[uo],3,1,!1,!1,null],["Protocol",[io],3,2,!1,!1,null],["Parameters",[oe],3,3,!1,!1,null],["ReferenceType",[co],3,4,!1,!1,null],["ReferenceID",[oe],3,5,!1,!1,null],["SyncStatus",[go],3,6,!1,!1,null]],[]);class So extends(G({Robotic:1,ItuAudioObjectBasedPolar:2,ItuAudioObjectBasedCartesian:3,ItuAudioSceneBasedPolar:4,ItuAudioSceneBasedCartesian:5,NAV:6,ProprietaryBase:128})){}const po=Z(So);class mo{constructor(e,t,n){this.CoordinateSystem=e,this.FieldFlags=t,this.Values=n}}const yo=c({CoordinateSystem:po,FieldFlags:fn,Values:vt},mo),Oo=H("OcaPhysicalPosition",3,"",1,is,[["GetCoordinateSystem",3,1,[],[po]],["GetPositionDescriptorFieldFlags",3,2,[],[fn]],["GetPositionDescriptor",3,3,[],[yo,yo,yo]],["SetPositionDescriptor",3,4,[yo],[]]],[["CoordinateSystem",[po],3,1,!0,!1,null],["PositionDescriptorFieldFlags",[fn],3,2,!0,!1,null],["PositionDescriptor",[yo],3,3,!1,!1,null]],[]);class bo extends(G({None:0,Prepare:1,Start:2,Pause:3,Stop:4,Reset:5})){}const wo=Z(bo);class Co extends(G({Unknown:0,NotReady:1,Readying:2,Ready:3,Running:4,Paused:5,Stopping:6,Stopped:7,Fault:8})){}const Po=Z(Co);class _o{constructor(e,t){this.SystemInterfaceParameters=e,this.MyNetworkAddress=t}}const Go=c({SystemInterfaceParameters:le,MyNetworkAddress:le},_o),vo=H("OcaApplicationNetwork",2,"",1,ie,[["GetLabel",2,1,[],[oe]],["SetLabel",2,2,[oe],[]],["GetOwner",2,3,[],[d]],["GetServiceID",2,4,[],[le]],["SetServiceID",2,5,[le],[]],["GetSystemInterfaces",2,6,[],[fe(Go)]],["SetSystemInterfaces",2,7,[fe(Go)],[]],["GetState",2,8,[],[Po]],["GetErrorCode",2,9,[],[l]],["Control",2,10,[wo],[]],["GetPath",2,11,[],[fe(oe),fe(d)]]],[["Label",[oe],2,1,!1,!0,null],["Owner",[d],2,2,!1,!0,null],["ServiceID",[le],2,3,!1,!1,null],["SystemInterfaces",[fe(Go)],2,4,!1,!1,null],["State",[Po],2,5,!1,!1,null],["ErrorCode",[l],2,6,!1,!1,null]],[]);class Do extends(G({None:0,OCP01:1,OCP02:2,OCP03:3})){}const To=Z(Do),Io=H("OcaControlNetwork",3,"",1,vo,[["GetControlProtocol",3,1,[],[To]]],[["Protocol",[To],3,1,!1,!1,["ControlProtocol"]]],[]);class Mo{constructor(e,t,n){this.CodingSchemeID=e,this.CodecParameters=t,this.ClockONo=n}}const Ao=c({CodingSchemeID:l,CodecParameters:oe,ClockONo:d},Mo);class Lo extends(G({None:0,Unicast:1,Multicast:2})){}const Eo=Z(Lo);class ko{constructor(e,t,n,r){this.Secure=e,this.StreamParameters=t,this.StreamCastMode=n,this.StreamChannelCount=r}}const xo=c({Secure:W,StreamParameters:le,StreamCastMode:Eo,StreamChannelCount:l},ko);class Uo extends(G({None:0,Start:1,Pause:2})){}const No=Z(Uo),Ro=Q;class Fo extends(G({Stopped:0,SettingUp:1,Running:2,Paused:3,Fault:4})){}const Bo=Z(Fo);class jo{constructor(e,t,n){this.ConnectorID=e,this.State=t,this.ErrorCode=n}}const Vo=c({ConnectorID:l,State:Bo,ErrorCode:l},jo);function zo(e,t){const n=e.encodedLength,r=e.encodeTo,s=e.decodeFrom,o=e.decodeLength,i=t.encodedLength,c=t.encodeTo,l=t.decodeFrom,u=t.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!(e instanceof Map||e instanceof WeakMap))throw new TypeError("Expected Map or WeakMap");let t=2;return e.forEach((e,r)=>{t+=n(r)*e.size,e.forEach(e=>{t+=i(e)})}),t},encodeTo:function(e,t,n){const s=t;let o=0;return t+=2,n.forEach((n,s)=>{o+=n.size,n.forEach(n=>{t=r(e,t,s),t=c(e,t,n)})}),e.setUint16(s,o),t},decodeFrom:function(e,t){const n=new Map,r=e.getUint16(t);t+=2;for(let o=0;o<r;o++){let r,o;[t,r]=s(e,t),[t,o]=l(e,t);let i=n.get(r);i||n.set(r,i=new Set),i.add(o)}return[t,n]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;for(let r=0;r<n;r++)t=o(e,t),t=u(e,t);return t}})}class qo{constructor(e,t,n,r,s,o,i,a,c){this.IDInternal=e,this.IDExternal=t,this.Connection=n,this.AvailableCodings=r,this.PinCount=s,this.ChannelPinMap=o,this.AlignmentLevel=i,this.AlignmentGain=a,this.CurrentCoding=c}}const Ho=c({IDInternal:l,IDExternal:oe,Connection:xo,AvailableCodings:fe(Ao),PinCount:l,ChannelPinMap:zo(l,Mt),AlignmentLevel:vt,AlignmentGain:vt,CurrentCoding:Ao},qo);class Wo{constructor(e,t,n,r,s,o,i,a){this.IDInternal=e,this.IDExternal=t,this.Connection=n,this.AvailableCodings=r,this.PinCount=s,this.ChannelPinMap=o,this.AlignmentLevel=i,this.CurrentCoding=a}}const Ko=c({IDInternal:l,IDExternal:oe,Connection:xo,AvailableCodings:fe(Ao),PinCount:l,ChannelPinMap:ut(l,Mt),AlignmentLevel:vt,CurrentCoding:Ao},Wo);class Xo extends(G({None:0,AV3:1,AVBTP:2,Dante:3,Cobranet:4,AES67:5,SMPTEAudio:6,LiveWire:7,ExtensionPoint:65})){}const Yo=Z(Xo),Qo=H("OcaMediaTransportNetwork",3,"",1,vo,[["GetMediaProtocol",3,1,[],[Yo]],["GetPorts",3,2,[],[fe(Lt)]],["GetPortName",3,3,[Mt],[oe]],["SetPortName",3,4,[Mt,oe],[]],["GetMaxSourceConnectors",3,5,[],[l]],["GetMaxSinkConnectors",3,6,[],[l]],["GetMaxPinsPerConnector",3,7,[],[l]],["GetMaxPortsPerPin",3,8,[],[l]],["GetSourceConnectors",3,9,[],[fe(Ko)]],["GetSourceConnector",3,10,[l],[Ko]],["GetSinkConnectors",3,11,[],[fe(Ho)]],["GetSinkConnector",3,12,[l],[Ho]],["GetConnectorsStatuses",3,13,[],[fe(Vo)]],["GetConnectorStatus",3,14,[l],[Vo]],["AddSourceConnector",3,15,[Ko,Bo],[Ko]],["AddSinkConnector",3,16,[Vo,Ho],[Ho]],["ControlConnector",3,17,[l,No],[]],["SetSourceConnectorPinMap",3,18,[l,ut(l,Mt)],[]],["SetSinkConnectorPinMap",3,19,[l,zo(l,Mt)],[]],["SetConnectorConnection",3,20,[l,xo],[]],["SetConnectorCoding",3,21,[l,Ao],[]],["SetConnectorAlignmentLevel",3,22,[l,vt],[]],["SetConnectorAlignmentGain",3,23,[l,vt],[]],["DeleteConnector",3,24,[l],[]],["GetAlignmentLevel",3,25,[],[vt,vt,vt]],["GetAlignmentGain",3,26,[],[vt,vt,vt]]],[["Protocol",[Yo],3,1,!1,!1,["MediaProtocol"]],["Ports",[fe(Lt)],3,2,!1,!1,null],["MaxSourceConnectors",[l],3,3,!1,!1,null],["MaxSinkConnectors",[l],3,4,!1,!1,null],["MaxPinsPerConnector",[l],3,5,!1,!1,null],["MaxPortsPerPin",[l],3,6,!1,!1,null],["AlignmentLevel",[vt],3,7,!1,!1,null],["AlignmentGain",[vt],3,8,!1,!1,null]],[["SourceConnectorChanged",3,1,[Ko,$,Ro]],["SinkConnectorChanged",3,2,[Ho,$,Ro]],["ConnectorStatusChanged",3,3,[Vo]]]);class Jo extends(G({None:0,Source:1,Sink:2})){}const Zo=Z(Jo);class $o extends(G({NotConnected:0,Connected:1,Muted:2})){}const ei=Z($o),ti=H("OcaNetworkSignalChannel",3,"",2,Et,[["AddToConnector",3,6,[d,l],[]],["GetConnectorPins",3,5,[],[ut(d,l)]],["GetIDAdvertised",3,1,[],[le]],["GetNetwork",3,3,[],[d]],["GetRemoteChannelID",3,8,[],[le]],["GetSourceOrSink",3,10,[],[Zo]],["GetStatus",3,11,[],[ei]],["RemoveFromConnector",3,7,[d],[]],["SetIDAdvertised",3,2,[le],[]],["SetNetwork",3,4,[d],[]],["SetRemoteChannelID",3,9,[le],[]]],[["ConnectorPins",[ut(d,l)],3,3,!1,!1,null],["IDAdvertised",[le],3,1,!1,!1,null],["Network",[d],3,2,!1,!1,null],["RemoteChannelID",[le],3,4,!1,!1,null],["SourceOrSink",[Zo],3,5,!1,!1,null],["Status",[ei],3,6,!1,!1,null]],[]);class ni extends(G({None:0,EthernetWired:1,EthernetWireless:2,USB:3,SerialP2P:4})){}const ri=Z(ni);class si{constructor(e,t){this.rxPacketErrors=e,this.txPacketErrors=t}}const oi=c({rxPacketErrors:d,txPacketErrors:d},si);class ii extends(G({Unknown:0,Ready:1,StartingUp:2,Stopped:3})){}const ai=Z(ii);class ci{constructor(e,t){this.SystemInterfaceHandle=e,this.MyNetworkAddress=t}}const li=c({SystemInterfaceHandle:le,MyNetworkAddress:le},ci),ui=H("OcaNetwork",3,"",2,is,[["GetLinkType",3,1,[],[ri]],["GetIDAdvertised",3,2,[],[le]],["SetIDAdvertised",3,3,[le],[]],["GetControlProtocol",3,4,[],[To]],["GetMediaProtocol",3,5,[],[Yo]],["GetStatus",3,6,[],[ai]],["GetStatistics",3,7,[],[oi]],["ResetStatistics",3,8,[],[]],["GetSystemInterfaces",3,9,[],[fe(li)]],["SetSystemInterfaces",3,10,[fe(li)],[]],["GetMediaPorts",3,11,[],[fe(d)]],["Startup",3,12,[],[]],["Shutdown",3,13,[],[]]],[["LinkType",[ri],3,1,!0,!1,null],["IDAdvertised",[le],3,2,!1,!1,null],["ControlProtocol",[To],3,3,!1,!1,null],["MediaProtocol",[Yo],3,4,!1,!1,null],["Status",[ai],3,5,!1,!1,null],["SystemInterfaces",[fe(li)],3,6,!1,!1,null],["MediaPorts",[fe(d)],3,7,!1,!1,null],["Statistics",[oi],3,8,!1,!1,null]],[]);class hi extends(G({Undefined:0,Locked:1,Synchronizing:2,FreeRun:3,Stopped:4})){}const di=Z(hi),gi=H("OcaMediaClock",3,"",2,is,[["GetType",3,1,[],[qe]],["SetType",3,2,[qe],[]],["GetDomainID",3,3,[],[l]],["SetDomainID",3,4,[l],[]],["GetSupportedRates",3,5,[],[fe(ro)]],["GetCurrentRate",3,6,[],[ro]],["SetCurrentRate",3,7,[ro],[]],["GetLockState",3,8,[],[di]]],[["Type",[qe],3,1,!1,!1,null],["DomainID",[l],3,2,!1,!1,null],["RatesSupported",[fe(ro)],3,3,!1,!1,null],["CurrentRate",[ro],3,4,!1,!1,null],["LockState",[di],3,5,!1,!1,null]],[]),fi=H("OcaStreamNetwork",3,"\n",2,is,[["GetLinkType",3,1,[],[ri]],["GetIDAdvertised",3,2,[],[le]],["SetIDAdvertised",3,3,[le],[]],["GetControlProtocol",3,4,[],[To]],["GetMediaProtocol",3,5,[],[Yo]],["GetStatus",3,6,[],[ai]],["GetStatistics",3,7,[],[oi]],["ResetStatistics",3,8,[],[]],["GetSystemInterfaces",3,9,[],[fe(li)]],["SetSystemInterfaces",3,10,[fe(li)],[]],["GetStreamConnectorsSource",3,11,[],[fe(d)]],["SetStreamConnectorsSource",3,12,[fe(d)],[]],["GetStreamConnectorsSink",3,13,[],[fe(d)]],["SetStreamConnectorsSink",3,14,[fe(d)],[]],["GetSignalChannelsSource",3,15,[],[fe(d)]],["SetSignalChannelsSource",3,16,[fe(d)],[]],["GetSignalChannelsSink",3,17,[],[fe(d)]],["SetSignalChannelsSink",3,18,[fe(d)],[]],["Startup",3,19,[],[]],["Shutdown",3,20,[],[]]],[["ControlProtocol",[To],3,3,!1,!1,null],["IDAdvertised",[le],3,2,!1,!1,null],["LinkType",[ri],3,1,!0,!1,null],["MediaProtocol",[Yo],3,4,!1,!1,null],["SignalChannelsSink",[fe(d)],3,10,!1,!1,null],["SignalChannelsSource",[fe(d)],3,9,!1,!1,null],["Statistics",[oi],3,11,!1,!1,null],["Status",[ai],3,5,!1,!1,null],["StreamConnectorsSink",[fe(d)],3,8,!1,!1,null],["StreamConnectorsSource",[fe(d)],3,7,!1,!1,null],["SystemInterfaces",[fe(li)],3,6,!1,!1,null]],[]);class Si{constructor(e,t,n,r){this.HostID=e,this.NetworkAddress=t,this.NodeID=n,this.StreamConnectorID=r}}const pi=c({HostID:le,NetworkAddress:le,NodeID:le,StreamConnectorID:le},Si);class mi extends(G({NotConnected:0,Connected:1,Paused:2})){}const yi=Z(mi);class Oi extends(G({None:0,Unicast:1,Multicast:2})){}const bi=Z(Oi);class wi{constructor(e,t,n,r,s,o,i,a,c,l,u){this.ErrorNumber=e,this.IDAdvertised=t,this.Index=n,this.Label=r,this.LocalConnectorONo=s,this.Priority=o,this.RemoteConnectorIdentification=i,this.Secure=a,this.Status=c,this.StreamParameters=l,this.StreamType=u}}const Ci=c({ErrorNumber:l,IDAdvertised:le,Index:l,Label:oe,LocalConnectorONo:d,Priority:l,RemoteConnectorIdentification:pi,Secure:W,Status:yi,StreamParameters:le,StreamType:bi},wi);class Pi extends(G({NotAvailable:0,Idle:1,Connected:2,Paused:3})){}const _i=Z(Pi),Gi=H("OcaStreamConnector",3,"\v",2,is,[["ConnectStream",3,7,[Ci],[l]],["DisconnectStream",3,8,[l],[]],["GetIDAdvertised",3,3,[],[le]],["GetOwnerNetwork",3,1,[],[d]],["GetPins",3,10,[],[ut(l,d)]],["GetSourceOrSink",3,5,[],[Zo]],["GetStatus",3,11,[],[_i]],["GetStreams",3,9,[],[ut(l,Ci)]],["SetIDAdvertised",3,4,[le],[]],["SetOwnerNetwork",3,2,[d],[]],["SetSourceOrSink",3,6,[Zo],[]]],[["IDAdvertised",[le],3,2,!1,!1,null],["OwnerNetwork",[d],3,1,!1,!1,null],["Pins",[ut(l,d)],3,5,!1,!1,null],["SourceOrSink",[Zo],3,3,!1,!1,null],["Status",[_i],3,6,!1,!1,null],["Streams",[ut(l,Ci)],3,4,!1,!1,null]],[]);var vi=Object.freeze({__proto__:null,OcaRoot:ie,OcaWorker:Et,OcaActuator:Qt,OcaMute:$t,OcaPolarity:nn,OcaSwitch:rn,OcaGain:sn,OcaPanBalance:on,OcaDelay:an,OcaDelayExtended:dn,OcaFrequencyActuator:gn,OcaFilterClassical:On,OcaFilterParametric:Cn,OcaFilterPolynomial:Pn,OcaFilterFIR:_n,OcaFilterArbitraryCurve:Dn,OcaDynamics:Un,OcaDynamicsDetector:Nn,OcaDynamicsCurve:Rn,OcaSignalGenerator:zn,OcaSignalInput:qn,OcaSignalOutput:Hn,OcaTemperatureActuator:Wn,OcaIdentificationActuator:Kn,OcaSummingPoint:Xn,OcaBasicActuator:Yn,OcaBooleanActuator:Qn,OcaInt8Actuator:Zn,OcaInt16Actuator:er,OcaInt32Actuator:nr,OcaInt64Actuator:or,OcaUint8Actuator:ir,OcaUint16Actuator:ar,OcaUint32Actuator:cr,OcaUint64Actuator:lr,OcaFloat32Actuator:ur,OcaFloat64Actuator:dr,OcaStringActuator:gr,OcaBitstringActuator:mr,OcaSensor:br,OcaLevelSensor:wr,OcaAudioLevelSensor:_r,OcaTimeIntervalSensor:Gr,OcaFrequencySensor:vr,OcaTemperatureSensor:Dr,OcaIdentificationSensor:Tr,OcaVoltageSensor:Ir,OcaCurrentSensor:Mr,OcaImpedanceSensor:Er,OcaGainSensor:kr,OcaBasicSensor:xr,OcaBooleanSensor:Ur,OcaInt8Sensor:Nr,OcaInt16Sensor:Rr,OcaInt32Sensor:Fr,OcaInt64Sensor:Br,OcaUint8Sensor:jr,OcaUint16Sensor:Vr,OcaUint32Sensor:zr,OcaFloat32Sensor:qr,OcaFloat64Sensor:Hr,OcaStringSensor:Wr,OcaBitstringSensor:Kr,OcaUint64Sensor:Xr,OcaBlock:Yt,OcaBlockFactory:rs,OcaMatrix:os,OcaAgent:is,OcaGrouper:Os,OcaRamper:Ls,OcaNumericObserver:Ns,OcaLibrary:qs,OcaPowerSupply:Js,OcaEventHandler:Zs,OcaNumericObserverList:$s,OcaMediaClock3:so,OcaTimeSource:fo,OcaPhysicalPosition:Oo,OcaApplicationNetwork:vo,OcaControlNetwork:Io,OcaMediaTransportNetwork:Qo,OcaManager:ce,OcaDeviceManager:Pe,OcaSecurityManager:_e,OcaFirmwareManager:Ie,OcaSubscriptionManager:Re,OcaPowerManager:je,OcaNetworkManager:Ve,OcaMediaClockManager:He,OcaLibraryManager:Ze,OcaAudioProcessingManager:$e,OcaDeviceTimeManager:lt,OcaTaskManager:Pt,OcaCodingManager:_t,OcaDiagnosticManager:Gt,OcaNetworkSignalChannel:ti,OcaNetwork:ui,OcaMediaClock:gi,OcaStreamNetwork:fi,OcaStreamConnector:Gi});const Di={DeviceManager:1,SecurityManager:2,FirmwareManager:3,SubscriptionManager:4,PowerManager:5,NetworkManager:6,MediaClockManager:7,LibraryManager:8,AudioProcessingManager:9,DeviceTimeManager:10,TaskManager:11,CodingManager:12,DiagnosticManager:13};function Ti(e){const t=e.EmitterONo,n=e.EventID;return[t,n.DefLevel,n.EventIndex].join(",")}const Ii={ONo:1055,MethodID:{DefLevel:1,MethodIndex:1}};class Mi extends n{constructor(e,...t){super(),this.objects=new Map,this.connection=e,e.on("error",e=>{this.emit("error",e)}),e.on("close",e=>{this.emit("close",e)}),this.modules=[],this.add_control_classes(Object.values(vi)),t.map(e=>this.add_control_classes(e)),this.DeviceManager=new Pe(Di.DeviceManager,this),this.SecurityManager=new _e(Di.SecurityManager,this),this.FirmwareManager=new Ie(Di.FirmwareManager,this),this.SubscriptionManager=new Re(Di.SubscriptionManager,this),this.PowerManager=new je(Di.PowerManager,this),this.NetworkManager=new Ve(Di.NetworkManager,this),this.MediaClockManager=new He(Di.MediaClockManager,this),this.LibraryManager=new Ze(Di.LibraryManager,this),this.AudioProcessingManager=new $e(Di.AudioProcessingManager,this),this.DeviceTimeManager=new lt(Di.DeviceTimeManager,this),this.TaskManager=new Pt(Di.TaskManager,this),this.CodingManager=new _t(Di.CodingManager,this),this.DiagnosticManager=new Gt(Di.DiagnosticManager,this),this.Root=new Yt(100,this),this.subscriptions=new Map}close(){this.connection.close()}send_command(e,t,n){return this.connection.send_command(e,t,n)}_doSubscribe(e){return this.SubscriptionManager.AddSubscription(e,Ii,new Uint8Array(0),ke.Reliable,new Uint8Array(0))}async add_subscription(n,r){const s=Ti(n),o=this.subscriptions;{const e=o.get(s);if(e)return e.callbacks.add(r),!0}const i=n=>{const r=this.subscriptions.get(s);if(!r)return void e("Subscription lost.");r.callbacks.forEach((function(e){try{e(n)}catch(e){t(e)}}))};this.connection._addSubscriber(n,i);const a={callbacks:new Set([r]),callback:i};o.set(s,a);try{await this._doSubscribe(n)}catch(e){throw o.delete(s),e}}remove_subscription(e,t){const n=Ti(e),r=this.subscriptions.get(n);if(!r)return Promise.reject("Callback not registered.");const s=r.callbacks;return s.delete(t),s.size?Promise.resolve(!0):(this.connection._removeSubscriber(e),this.subscriptions.delete(n),this.SubscriptionManager.RemoveSubscription(e,Ii))}find_best_class(e){for("object"==typeof e&&e.ClassID&&(e=e.ClassID);e.length;){const t=this.find_class_by_id(e);if(t)return t;e=e.substr(0,e.length-1)}return null}add_control_classes(e){if(Array.isArray(e)){const t={};for(let n=0;n<e.length;n++){const r=e[n];t[r.ClassID]=r}e=t}else if("object"!=typeof e)throw new Error("Unsupported module.");this.modules.push(e)}find_class_by_id(e){"object"==typeof e&&e.ClassID&&(e=e.ClassID);const t=this.modules;for(let n=t.length-1;n>=0;n--){const r=t[n][e];if(r)return r}return null}allocate(e,t){"object"==typeof t&&(t=t.valueOf());const n=this.objects;return n.has(t)||n.set(t,new e(t,this)),n.get(t)}resolve_object(e){if("MemberObjectIdentification"in e)return this.resolve_object(e.MemberObjectIdentification);if("ONo"in e&&"ClassIdentification"in e){const t=e.ONo,n=e.ClassIdentification;return this.allocate(this.find_best_class(n),t)}throw new TypeError("Expected OcaObjectIdentification or OcaBlockMember")}GetDeviceTree(){const e=t=>t.GetMembers().then(t=>{const n=[];t=t.map(this.resolve_object,this);for(let r=0;r<t.length;r++)n.push(Promise.resolve(t[r])),t[r].ClassID.startsWith(Yt.ClassID)&&n.push(e(t[r]));return Promise.all(n)});return e(this.Root)}get_device_tree(){return this.GetDeviceTree()}get_role_map(e){return this.get_device_tree().then((function(t){return function(e,t){const n=new Map;t||(t="/");const r=[],s=e=>{Array.isArray(e)?e.forEach(s):r.push(e.GetRole().then(t=>{n.set(e,t)}))};return e.forEach(s),Promise.all(r).then((function(){const r=new Map,s=(e,o)=>{const i=null!=o?o+t:"",a=new Map;e.forEach((function(e,t){if(Array.isArray(e))return;const r=n.get(e);if(a.has(r)){const t=a.get(r);Array.isArray(t)?t.push(e):a.set(r,[t,e])}else a.set(r,e)})),a.forEach((function(e,t){if(Array.isArray(e)){let n=1;for(let r=0;r<e.length;r++){const s=t+n;for(;a.has(s);)n++;a.set(s,e[r]),a.set(e[r],s)}a.delete(t)}else a.set(e,t)})),e.forEach((t,n)=>{if(Array.isArray(t))s(t,i+a.get(e[n-1]));else{const e=i+a.get(t);r.set(e,t)}})};return s(e,null),r}))}(t,e)}))}discover_all_fallback(){return this.GetDeviceTree().then(e=>{const t=[],n=function(e){for(let r=0;r<e.length;r++)Array.isArray(e[r])?n(e[r]):t.push(e[r])};return n(e),t})}discover_all(){return this.Root.GetMembersRecursive().then(e=>e.map(this.resolve_object,this)).catch(()=>this.discover_all_fallback())}set_keepalive_interval(e){this.connection.set_keepalive_interval(e)}}const Ai=Object.values(vi);class Li extends(G({None:0,ParamSet:1,Patch:2,Program:3})){}class Ei extends(G({Ampere:4,DegreeCelsius:2,Hertz:1,None:0,Ohm:5,Volt:3})){}var ki=Object.freeze({__proto__:null,OcaApplicationNetworkCommand:bo,OcaApplicationNetworkState:Co,OcaBaseDataType:bs,OcaBlockMember:Ut,OcaClassAuthorityID:class{constructor(e,t,n){this.Sentinel=e,this.Reserved=t,this.OrganizationID=n}},OcaClassIdentification:X,OcaClassicalFilterShape:Sn,OcaComponent:Ge,OcaDBr:Tn,OcaDelayUnit:cn,OcaDelayValue:un,OcaDeviceState:{Operational:1,Disabled:2,Error:4,Initializing:8,Updating:16,unused:32},OcaDynamicsFunction:Mn,OcaEnumItem:class{constructor(e){this.Value=e}},OcaEnumItem16:class{constructor(e){this.Value=e}},OcaEvent:g,OcaEventID:u,OcaFilterPassband:mn,OcaGlobalTypeIdentifier:Rt,OcaGrouperCitizen:ls,OcaGrouperEnrollment:hs,OcaGrouperGroup:gs,OcaGrouperMode:Ss,OcaGrouperStatusChangeEventData:class{constructor(e,t,n,r){this.Event=e,this.groupIndex=t,this.citizenIndex=n,this.changeType=r}},OcaGrouperStatusChangeType:ms,OcaImpedance:Ar,OcaLevelDetectionLaw:Ln,OcaLevelMeterLaw:Cr,OcaLibAccess:Rs,OcaLibParamSetAssignment:class{constructor(e,t){this.ParamSetIdentifier=e,this.TargetBlockONo=t}},OcaLibVol:Vs,OcaLibVolChangedEventData:class{constructor(e,t,n){this.Event=e,this.VolumeID=t,this.ChangeType=n}},OcaLibVolData_ParamSet:Bt,OcaLibVolIdentifier:We,OcaLibVolMetadata:Bs,OcaLibVolStandardTypeID:Li,OcaLibVolType:Xe,OcaLibraryIdentifier:Qe,OcaManagerDefaultObjectNumbers:Di,OcaManagerDescriptor:Se,OcaMediaClockAvailability:eo,OcaMediaClockLockState:hi,OcaMediaClockRate:no,OcaMediaClockType:ze,OcaMediaCoding:Mo,OcaMediaConnection:ko,OcaMediaConnectorCommand:Uo,OcaMediaConnectorElement:{PinMap:1,Connection:2,Coding:4,AlignmentLevel:8,AlignmentGain:16},OcaMediaConnectorState:Fo,OcaMediaConnectorStatus:jo,OcaMediaConnectorStatusChangedEventData:class{constructor(e,t){this.Event=e,this.ConnectorStatus=t}},OcaMediaSinkConnector:qo,OcaMediaSinkConnectorChangedEventData:class{constructor(e,t,n,r){this.Event=e,this.SinkConnector=t,this.ChangeType=n,this.ChangedElement=r}},OcaMediaSourceConnector:Wo,OcaMediaSourceConnectorChangedEventData:class{constructor(e,t,n,r){this.Event=e,this.SourceConnector=t,this.ChangeType=n,this.ChangedElement=r}},OcaMediaStreamCastMode:Lo,OcaMethod:Le,OcaMethodID:Me,OcaModelDescription:me,OcaModelGUID:Oe,OcaMuteState:Jt,OcaNetworkControlProtocol:Do,OcaNetworkLinkType:ni,OcaNetworkMediaProtocol:Xo,OcaNetworkMediaSourceOrSink:Jo,OcaNetworkSignalChannelStatus:$o,OcaNetworkStatistics:si,OcaNetworkStatus:ii,OcaNetworkSystemInterfaceDescriptor:_o,OcaNetworkSystemInterfaceID:ci,OcaNotificationDeliveryMode:ke,OcaOPath:as,OcaObjectIdentification:kt,OcaObjectListEventData:class{constructor(e,t){this.Event=e,this.objectList=t}},OcaObjectSearchResult:Vt,OcaObjectSearchResultFlags:{ONo:1,ClassIdentification:2,ContainerPath:4,Role:8,Label:16,unused:32},OcaObservationEventData:class{constructor(e,t){this.Event=e,this.Reading=t}},OcaObservationListEventData:class{constructor(e,t){this.Event=e,this.Reading=t}},OcaObserverState:Es,OcaParametricEQShape:bn,OcaPilotToneDetectorSpec:class{constructor(e,t,n){this.Threshold=e,this.Frequency=t,this.PollInterval=n}},OcaPolarityState:en,OcaPort:At,OcaPortID:It,OcaPortMode:Dt,OcaPositionCoordinateSystem:So,OcaPositionDescriptor:mo,OcaPowerState:Fe,OcaPowerSupplyLocation:Hs,OcaPowerSupplyState:Ks,OcaPowerSupplyType:Ys,OcaPresentationUnit:kn,OcaProperty:_s,OcaPropertyChangeType:U,OcaPropertyDescriptor:Cs,OcaPropertyID:R,OcaProtoObjectIdentification:Yr,OcaProtoPort:$r,OcaProtoPortID:Jr,OcaProtoSignalPath:ts,OcaRamperCommand:vs,OcaRamperInterpolationLaw:Ts,OcaRamperState:Ms,OcaRelationalOperator:xs,OcaResetCause:we,OcaSensorReadingState:yr,OcaSignalPath:Ht,OcaStatus:v,OcaStream:wi,OcaStreamConnectorIdentification:Si,OcaStreamConnectorStatus:Pi,OcaStreamStatus:mi,OcaStreamType:Oi,OcaStringComparisonType:Kt,OcaSubscriptionManagerState:Ue,OcaSweepType:Fn,OcaTask:gt,OcaTaskCommand:St,OcaTaskManagerState:mt,OcaTaskState:Ot,OcaTaskStateChangedEventData:class{constructor(e,t,n){this.TaskID=e,this.ProgramID=t,this.Status=n}},OcaTaskStatus:wt,OcaTimeMode:ht,OcaTimePTP:at,OcaTimeProtocol:oo,OcaTimeReferenceType:ao,OcaTimeSourceAvailability:lo,OcaTimeSourceSyncStatus:ho,OcaTransferFunction:Gn,OcaUnitOfMeasure:Ei,OcaVersion:De,OcaWaveformType:jn});class xi extends A{constructor(e,t){super(t),this.ws=e,e.binaryType="arraybuffer",e.addEventListener("message",e=>{this.read(e.data)}),e.addEventListener("close",()=>{this.emit("close")}),e.addEventListener("error",()=>{this.emit("error")})}write(e){this.ws.send(e),super.write(e)}static connect(e){return new Promise((t,n)=>{const r=new WebSocket(e.url),s=function(e){n(e)};r.addEventListener("open",()=>{r.removeEventListener("error",s),t(new this(r,e))}),r.addEventListener("error",s)})}cleanup(){if(super.cleanup(),this.ws){try{this.ws.close()}catch(e){}this.ws=null}}_now(){return performance.now()}}function Ui(e){return new Promise(t=>setTimeout(t,e))}const Ni={Connection:A,WebSocket:xi,Device:Mi,ControlClasses:vi,define_custom_class:function(e,t,n,r,s,o,i,a){if(n=String.fromCharCode.apply(String,n.split(".").map(e=>parseInt(e))),s){if("string"==typeof s)for(let e=0;e<Ai.length;e++)if(Ai[e].ClassName===s){s=Ai[e];break}}else{const e=n.substr(0,n.length-1);for(let t=0;t<Ai.length;t++)if(Ai[t].ClassID===e){s=Ai[t];break}}if("function"!=typeof s)throw new Error("Unknown parent class.");return H(e,t,n,r,s,o,i,a)}};var Ri=Object.freeze({__proto__:null,Connection:P,controller:Ni,ClientConnection:A,Command:o,CommandRrq:i,decodeMessage:O,encodeMessage:w,error:t,log:function(...e){try{console.log(...e)}catch(e){}},KeepAlive:m,Notification:S,Response:p,RemoteDevice:Mi,Types:ki,warn:e,WebSocketConnection:xi,RemoteControlClasses:vi,AbstractUDPConnection:class extends A{constructor(e,t){t.batch>=0||(t.batch=128),super(t),this.socket=e,this.delay=t.delay>=0?t.delay:5,this.retry_interval=t.retry_interval>=0?t.retry_interval:250,this.retry_count=t.retry_count>=0?t.retry_count:3,this._write_out_id=-1,this._write_out_callback=()=>{this._write_out_id=-1,this._write_out()},this._retry_id=this.retry_interval>0?setInterval(()=>this._retryCommands(),this.retry_interval):-1,this.q=[],e.onmessage=e=>{try{this.read(e)}catch(e){console.warn("Failed to parse incoming AES70 packet: %o",e)}null!==this.inbuf&&this.close()},e.onerror=e=>this.error(e),this.set_keepalive_interval(1)}get is_reliable(){return!1}static async connect(e,t){const n=await e.connect(t.host,t.port,t.type);return await async function(e,t){const n=e.receiveMessage().then(e=>{const t=[];let n=0;if(n=O(new DataView(e),0,t),1!==t.length)throw new Error("Expected keepalive response.");return!0}),r=w(new m(1e3)),s=5*(t.retry_interval||250);for(let t=0;t<3;t++)if(e.send(r),await Promise.race([n,Ui(s)]))return;throw new Error("Failed to connect.")}(n,t),new this(n,t)}write(e){this.q.push(e),this.tx_idle_time()>=this.delay?this._write_out():this._schedule_write_out()}flush(){super.flush(),this.tx_idle_time()>this.delay&&this._write_out()}cleanup(){super.cleanup(),this.socket&&(this.socket.close(),this.socket=null),-1!==this._write_out_id&&(clearTimeout(this._write_out_id),this._write_out_id=-1),-1!==this._retry_id&&(clearInterval(this._retry_id),this._retry_id=-1)}_estimate_next_tx_time(){return this._now()+(this.delay+2)*this.q.length}_write_out(){if(!this.socket)return;const e=this.q;if(!e.length)return;const t=e.shift();this.socket.send(t),super.write(t),e.length&&this._schedule_write_out()}_schedule_write_out(){const e=this.tx_idle_time(),t=this.delay;e>=t?this._write_out():-1===this._write_out_id&&(this._write_out_id=setTimeout(this._write_out_callback,t-e))}_retryCommands(){const e=this._now(),t=e-this.retry_interval,n=this.retry_interval/this.delay*5-this.q.length,r=this._pendingCommands,s=[],o=[];for(const e of r){const[,r]=e;if(r.lastSent>t)break;r.retries>=this.retry_count?o.push(e):s.length<n&&s.push(e)}if(o.length){const e=new Error("Timeout.");o.forEach(([t,n])=>{r.delete(t),n.reject(e)})}s.forEach(([t,n])=>{r.delete(t),r.set(t,n),this.send(n.command),n.lastSent=e,n.retries++})}}});window.OCA=Ri}();
1
+ !function(){"use strict";function e(...e){try{console.warn(...e)}catch(e){}}function t(...e){try{console.error(...e)}catch(e){}}class n{constructor(){this.event_handlers=new Map}emit(e){const t=this.event_handlers.get(e),n=Array.prototype.slice.call(arguments,1);t&&t.forEach(e=>{try{e.apply(this,n)}catch(t){console.warn("ERROR when calling %o: %o",e,t)}})}on(e,t){let n=this.event_handlers.get(e);n||this.event_handlers.set(e,n=new Set),n.add(t)}addEventListener(e,t){this.on(e,t)}removeEventListener(e,t){const n=this.event_handlers.get(e);if(!n||!n.has(t))throw new Error("removeEventListeners(): not installed.");n.delete(t)}}class r{get messageType(){return this.constructor.messageType}}class o{get byteLength(){let e=this._byteLength;if(-1===e){const t=this.encoders,n=this.data;e=0;for(let r=0;r<t.length;r++)e+=t[r].encodedLength(n[r]);this._byteLength=e}return e}constructor(e,t){this.encoders=e,this.data=t,this._byteLength=-1}encodeTo(e,t){t|=0;const{encoders:n,data:r}=this;for(let o=0;o<n.length;o++)t=n[o].encodeTo(e,t,r[o]);return t}}class s extends r{constructor(e,t,n,r,o){super(),this.target=+e,this.method_level=0|t,this.method_index=0|n,this.param_count=0|r,this.parameters=o||null,this.handle=0}static get messageType(){return 0}encode_to(e,t){if(t|=0,e.setUint32(t,this.encoded_length()),t+=4,e.setUint32(t,this.handle),t+=4,e.setUint32(t,this.target),t+=4,e.setUint16(t,this.method_level),t+=2,e.setUint16(t,this.method_index),t+=2,e.setUint8(t,this.param_count),t++,this.param_count){const n=this.parameters;n instanceof o?t=n.encodeTo(e,t):(new Uint8Array(e.buffer).set(new Uint8Array(n),e.byteOffset+t),t+=n.byteLength)}return t}encoded_length(){return 17+(this.param_count?this.parameters.byteLength:0)}decode_from(e,t,n){let r=e.getUint32(t);if(t+=4,this.handle=e.getUint32(t),t+=4,this.target=e.getUint32(t),t+=4,this.method_level=e.getUint16(t),t+=2,this.method_index=e.getUint16(t),t+=2,this.param_count=e.getUint8(t),t++,r-=17,r<0)throw new Error("Bad Command Length.");if(r>0){if(!this.param_count)throw new Error("Expected no parameter bytes.");this.parameters=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+r),t+=r}return t}response(e,t,n){return new Response(this.handle,e,t,n)}}class i extends s{static get messageType(){return 1}}function a(e){if(!e.isConstantLength)return e;const t=e.encodedLength(),n=e.decode,r=e.encodeTo;return{isConstantLength:!0,encodedLength:e.encodedLength,encodeTo:r,decode:n,decodeFrom:function(e,r){const o=n(e,r);return[r+t,o]},decodeLength:function(e,n){return n+t}}}const c=a({isConstantLength:!0,encodedLength:function(e){return 2},encodeTo:function(e,t,n){return e.setUint16(t,0|n,!1),t+2},decode:function(e,t){return e.getUint16(t,!1)}});function l(e,t){const n=Object.keys(e).length;return t||(t=class{constructor(...t){if(t.length===n){let n=0;for(const r in e)Object.prototype.hasOwnProperty.call(e,r)&&(this[r]=t[n++])}else{if(1!==t.length||"object"!=typeof t[0])throw new TypeError("Unexpected arguments.");{const n=t[0];for(const t in e)Object.prototype.hasOwnProperty.call(e,t)&&(this[t]=n[t])}}}}),a({type:t,isConstantLength:!1,encodedLength:function(t){let n=0;for(const r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue;n+=e[r].encodedLength(t[r])}return n},encodeTo:function(t,n,r){for(const o in e){if(!Object.prototype.hasOwnProperty.call(e,o))continue;n=e[o].encodeTo(t,n,r[o])}return n},decodeFrom:function(n,r){const o=new Array(e.length);let s=0;for(const t in e){if(!Object.prototype.hasOwnProperty.call(e,t))continue;const i=e[t];let a;[r,a]=i.decodeFrom(n,r),o[s++]=a}return[r,new t(...o)]},decodeLength:function(t,n){for(const r in e){if(!Object.prototype.hasOwnProperty.call(e,r))continue;n=e[r].decodeLength(t,n)}return n}})}class u{constructor(e,t){this.DefLevel=e,this.EventIndex=t}}const h=l({DefLevel:c,EventIndex:c},u),d=a({isConstantLength:!0,encodedLength:function(e){return 4},encodeTo:function(e,t,n){return e.setUint32(t,n,!1),t+4},decode:function(e,t){return e.getUint32(t,!1)}});class g{constructor(e,t){this.EmitterONo=e,this.EventID=t}}const f=l({EmitterONo:d,EventID:h},g);class S extends r{constructor(e,t,n,r,o,s,i){super(),this.target=e,this.method_level=0|t,this.method_index=0|n,this.context=r,this.event=o,this.param_count=0|s,this.parameters=i||null}static get messageType(){return 2}encode_to(e,t){e.setUint32(t,this.encoded_length()),t+=4,e.setUint32(t,this.target),t+=4,e.setUint16(t,this.method_level),t+=2,e.setUint16(t,this.method_index),t+=2,e.setUint8(t,this.param_count),t++;const n=this.context;if(n){const r=n.byteLength;e.setUint16(t,r),t+=2,r>0&&(new Uint8Array(e.buffer).set(new Uint8Array(this.context),e.byteOffset+t),t+=r)}else e.setUint16(t,0),t+=2;return e.setUint32(t,this.event.EmitterONo),t+=4,e.setUint16(t,this.event.EventID.DefLevel),t+=2,e.setUint16(t,this.event.EventID.EventIndex),t+=2,this.param_count>1&&(this.parameters instanceof o?t=this.parameters.encodeTo(e,t):(new Uint8Array(e.buffer).set(new Uint8Array(this.parameters),e.byteOffset+t),t+=this.parameters.byteLength)),t}encoded_length(){return 23+(this.param_count>1?this.parameters.byteLength:0)+(this.context?this.context.byteLength:0)}decode_from(e,t,n){let r=e.getUint32(t);t+=4,this.target=e.getUint32(t),t+=4,this.method_level=e.getUint16(t),t+=2,this.method_index=e.getUint16(t),t+=2,this.param_count=e.getUint8(t),t++;const o=e.getUint16(t);let s;if(t+=2,o?(this.context=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+o),t+=o):this.context=null,[t,s]=f.decodeFrom(e,t),this.event=s,r-=23+o,r<0)throw new Error("Bad Notification Length.");return r>0&&(this.parameters=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+r),t+=r),t}}class p extends r{constructor(e,t,n,r){super(),this.handle=e,this.status_code=0|t,this.param_count=0|n,this.parameters=r||null}static get messageType(){return 3}encoded_length(){return 10+(this.param_count?this.parameters.byteLength:0)}decode_from(e,t,n){let r=e.getUint32(t);if(t+=4,this.handle=e.getUint32(t),t+=4,this.status_code=e.getUint8(t),t++,this.param_count=e.getUint8(t),t++,r-=10,r<0)throw new Error("Bad Response length.");if(r>0){if(!this.param_count)throw new Error("Decoding response with parameterCount=0 but %o bytes of parameters",r);this.parameters=e.buffer.slice(e.byteOffset+t,e.byteOffset+t+r),t+=r}return t}encode_to(e,t){return e.setUint32(t,this.encoded_length()),t+=4,e.setUint32(t,this.handle),t+=4,e.setUint8(t,this.status_code),t++,e.setUint8(t,this.param_count),t++,this.param_count&&(this.parameters instanceof o?t=this.parameters.encodeTo(e,t):(new Uint8Array(e.buffer).set(new Uint8Array(this.parameters),e.byteOffset+t),t+=this.parameters.byteLength)),t}}class m extends r{static get messageType(){return 4}constructor(e){super(),this.time=e||0}decode_from(e,t,n){if(4==n)this.time=e.getUint32(t),t+=4;else{if(2!=n)throw new Error("Bad keepalive timeout length.");this.time=1e3*e.getUint16(t),t+=2}return t}encode_to(e,t){return this.time%1e3?(e.setUint32(t,this.time),t+=4):(e.setUint16(t,this.time/1e3),t+=2),t}encoded_length(){return this.time%1e3?4:2}}const y=[s,i,S,p,m];function O(e,t,n){if(e.byteLength<e.byteOffset+t+10)return-1;if(t|=0,59!=e.getUint8(t))throw new Error("Bad sync value.");t++,t+=2;const r=e.getUint32(t);t+=4;const o=e.getUint8(t);t++;const s=e.getUint16(t);t+=2;const i=e.byteOffset+t-9+r;if(i>e.byteLength)return-1;n.length=s;const a=y[o];if(void 0===a)throw new Error("Bad Message Type");if(a===m&&1!==s)throw new Error("Bad KeepAlive message count.");for(let r=0;r<s;r++)n[r]=new a,t=n[r].decode_from(e,t,i-e.byteOffset-t);if(t!=i)throw new Error("Decode error: "+t+" vs "+i);return t}function b(e,t,n,r,o){r||(r=0),o||(o=n.length);if(!(o-r<=65535))throw new Error("Too many PDUs.");e.setUint8(t,59);const s=t+=1;e.setUint16(t,1);const i=t+=2;t+=4,e.setUint8(t,n[r].messageType),t++,e.setUint16(t,o-r),t+=2;for(let s=r;s<o;s++)t=n[s].encode_to(e,t);return e.setUint32(i,t-s),t}function C(e){Array.isArray(e)||(e=[e]);const t=function(e){let t=10;const n=e[0].messageType;for(let r=0;r<e.length;r++){const o=e[r];if(o.messageType!=n)throw new Error("Cannot combine different types in one message.");t+=o.encoded_length()}return t}(e),n=new ArrayBuffer(t);if(b(new DataView(n),0,e,0,e.length)!=t)throw new Error("Message length mismatch.");return n}class w{constructor(e,t){if(!(e<=4294967295))throw new TypeError("Invalid batch size.");this._pdus=[],this._batchSize=e,this._resultCallback=t,this._currentSize=0,this._currentCount=0,this._lastMessageType=-1,this._flushScheduled=!1,this._flushCb=()=>{this._flushScheduled=!1,null!==this._pdus&&this.flush()}}add(e){const t=this._currentSize,n=e.encoded_length(),r=e.messageType,o=this._lastMessageType===r&&4!==r&&this._currentCount<65535;let s=n;o||(s+=10),t&&t+s>this._batchSize&&(this.flush(),s=n+10),this._pdus.push(e),this._currentSize+=s,o?this._currentCount++:this._currentCount=1,this._lastMessageType=r,this._currentSize>this._batchSize?this.flush():1===this._pdus.length&&this.scheduleFlush()}scheduleFlush(){this._flushScheduled||(this._flushScheduled=!0,Promise.resolve().then(this._flushCb).catch(e=>{console.error(e)}))}flush(){if(!this._currentSize)return;const e=this._pdus,t=new ArrayBuffer(this._currentSize),n=new DataView(t),r=e.length;for(let t=0,o=0,s=0;t<r;t++){const i=e[t].messageType;t!==r-1&&t+1-o!=65535&&4!==i&&i===e[t+1].messageType||(s=b(n,s,e,o,t+1),o=t+1)}this._currentSize=0,this._lastMessageType=-1,this._currentCount=0,this._pdus.length=0,this._resultCallback(t)}dispose(){this._pdus=null}}class P extends n{constructor(e){e||(e={}),super();const t=this._now();this.options=e;const n=e.batch>=0?e.batch:65536;this._message_generator=new w(n,e=>this.write(e)),this.inbuf=null,this.inpos=0,this.last_rx_time=t,this.last_tx_time=t,this.rx_bytes=0,this.tx_bytes=0,this.keepalive_interval=-1,this._keepalive_interval_id=null;const r=()=>{this.removeEventListener("close",r),this.removeEventListener("error",r),this.cleanup()};this.on("close",r),this.on("error",r)}get is_reliable(){return!0}send(e){if(this.is_closed())throw new Error("Connection is closed.");this._message_generator.add(e)}tx_idle_time(){return this._now()-this.last_tx_time}rx_idle_time(){return this._now()-this.last_tx_time}read(e){if(this.rx_bytes+=e.byteLength,this.last_rx_time=this._now(),this.inbuf){const t=this.inbuf.byteLength-this.inpos,n=new Uint8Array(new ArrayBuffer(t+e.byteLength));n.set(new Uint8Array(this.inbuf,this.inpos)),n.set(new Uint8Array(e),t),this.inbuf=null,this.inpos=0,e=n.buffer}let t=0;const n=new DataView(e);try{do{const r=[],o=O(n,t,r);if(-1==o){this.inbuf=e,this.inpos=t;break}t=o,this.incoming(r)}while(t<e.byteLength)}catch(e){console.error(e),this.is_reliable&&(console.error("Error when handling incoming data. Closing connection."),this.close())}this._check_keepalive()}incoming(e){}write(e){this.last_tx_time=this._now(),this.tx_bytes+=e.byteLength}is_closed(){return null===this._message_generator}close(){this.emit("close")}error(e){this.emit("error",e)}cleanup(){if(this.is_closed())throw new Error("cleanup() called twice.");this.set_keepalive_interval(0),this._message_generator.dispose(),this._message_generator=null}_check_keepalive(){if(!(this.keepalive_interval>0))return;const e=this.keepalive_interval;this.rx_idle_time()>3*e?(this.emit("timeout"),this.error(new Error("Keepalive timeout."))):this.tx_idle_time()>.75*e&&(this.flush(),this.tx_idle_time()>.75*e&&this.send(new m(e)))}flush(){this._message_generator.flush()}set_keepalive_interval(e){const t=1e3*e;null!==this._keepalive_interval_id&&(clearInterval(this._keepalive_interval_id),this._keepalive_interval_id=null),this.keepalive_interval=t,this.is_closed()||(this.send(new m(t)),t>0&&(this._keepalive_interval_id=setInterval(()=>{this._check_keepalive()},t/2)))}}function _(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function G(e){let t=null;function n(n){if(null===t){t=new Map;for(const n in e)_(e,n)&&t.set(e[n],n)}return t.get(n)}let r=null;const o=class{constructor(t){if("string"==typeof t){if(!_(e,t))throw new Error("No such enum value.");return this.constructor[t]}if(null!==r&&r.has(t))return r.get(t);this.value=t,function(e,t){null===r&&(r=new Map),r.set(e,t)}(t,this)}get name(){return n(this.value)}valueOf(){return this.value}toString(){return this.name}static getName(e){const t=n(e);if(void 0===t)throw new Error("No such enum value.");return t}static getValue(t){const n=function(t){if(_(e,t))return e[t]}(t);if(void 0===n)throw new Error("No such enum value.");return n}static values(){return e}};for(const t in e)_(e,t)&&Object.defineProperty(o,t,{get:function(){return new this(e[t])},enumerable:!1,configurable:!0});return o}class v extends(G({OK:0,ProtocolVersionError:1,DeviceError:2,Locked:3,BadFormat:4,BadONo:5,ParameterError:6,ParameterOutOfRange:7,NotImplemented:8,InvalidRequest:9,ProcessingFailed:10,BadMethod:11,PartiallySucceeded:12,Timeout:13,BufferOverflow:14})){}class T{constructor(e,t){this.status=new v(e),this.cmd=t}static check_status(e,t){return e instanceof this&&e.status===t}toString(){return"RemoteError("+this.status+")"}}class D{constructor(e){this.values=e}item(e){return this.values[e]}get length(){return this.values.length}}class I{get handle(){return this.command.handle}constructor(e,t,n,r){this.resolve=e,this.reject=t,this.returnTypes=n,this.command=r,this.lastSent=0,this.retries=0}response(e){const{resolve:t,reject:n,returnTypes:r,command:o}=this;if(0!==e.status_code)n(new T(e.status_code,o));else if(r)try{const n=Math.min(e.param_count,r.length);if(0===n)t();else{const o=new Array(n),s=new DataView(e.parameters);for(let e=0,t=0;e<n;e++){let n;[t,n]=r[e].decodeFrom(s,t),o[e]=n}t(1===n?o[0]:new D(o))}}catch(e){n(e)}else t(e)}}function M(e){const t=e.EmitterONo,n=e.EventID;return[t,n.DefLevel,n.EventIndex].join(",")}class L extends P{constructor(e){super(e),this._pendingCommands=new Map,this._nextCommandHandle=0,this._subscribers=new Map}cleanup(){super.cleanup(),this._subscribers=null;const e=this._pendingCommands;this._pendingCommands=null;const t=new Error("closed");e.forEach((e,n)=>{e.reject(t)})}_addSubscriber(e,t){const n=M(e),r=this._subscribers;if(r.has(n))throw new Error("Subscriber already exists.");r.set(n,t)}_removeSubscriber(e){const t=M(e),n=this._subscribers;if(!n.has(t))throw new Error("Unknown subscriber.");n.delete(t)}_getNextCommandHandle(){let e;const t=this._pendingCommands;if(null===t)throw new Error("Connection not open.");do{e=this._nextCommandHandle,this._nextCommandHandle=e+1|0}while(t.has(e));return e}_estimate_next_tx_time(){return this._now()}send_command(e,t,n){const r=(n,r)=>{const o=this._getNextCommandHandle();e.handle=o;const s=new I(n,r,t,e);this._pendingCommands.set(o,s),s.lastSent=this._estimate_next_tx_time(),this.send(e)};if(!n)return new Promise(r);r(e=>n(!0,e),e=>n(!1,e))}_removePendingCommand(e){const t=this._pendingCommands,n=t.get(e);return n?(t.delete(e),n):null}incoming(e){for(let t=0;t<e.length;t++){if(null===this._pendingCommands)return;const n=e[t];if(n instanceof p){const e=this._removePendingCommand(n.handle);if(null===e){if(this.is_reliable)return void this.error(new Error("Unknown handle."));continue}e.response(n)}else if(n instanceof S){const e=this._subscribers,t=M(n.event),r=e.get(t);if(!r)continue;r(n)}else{if(!(n instanceof m))throw new Error("Unexpected PDU");if(!(n.time>0))throw new Error("Bad keepalive timeout.")}}}}const A=a({isConstantLength:!1,encodedLength:function(e){if(e instanceof ArrayBuffer&&(e=new Uint8Array(e)),!(Array.isArray(e)||e instanceof Uint8Array))throw new TypeError("Expected Array or Uint8Array");const t=e.length;if(t>65535)throw new Error("Array too long for OcaBlob OCP.1 encoding.");return 2+t},encodeTo:function(e,t,n){n instanceof ArrayBuffer&&(n=new Uint8Array(n));const r=n.length;e.setUint16(t,r),t+=2;return new Uint8Array(e.buffer,e.byteOffset).set(n,t),t+r},decodeFrom:function(e,t){const n=e.getUint16(t);return[(t+=2)+n,new Uint8Array(e.buffer,e.byteOffset+t,n)]},decodeLength:function(e,t){return t+2+e.getUint16(t)}});function E(e){return a({isConstantLength:!0,encodedLength:function(t){return e},encodeTo:function(t,n,r){if(!(Array.isArray(r)||r instanceof Uint8Array))throw new TypeError("Expected Array or Uint8Array");if(r.length!==e)throw new Error("Length mismatch.");return new Uint8Array(t.buffer,t.byteOffset).set(r,n),n+e},decode:function(t,n){return new Uint8Array(t.buffer,t.byteOffset+n,e)}})}const k=a({isConstantLength:!0,encodedLength:function(e){return 1},encodeTo:function(e,t,n){return e.setUint8(t,n?1:0),t+1},decode:function(e,t){return 0!==e.getUint8(t)}}),x=c,U=x;function N(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function R(e){return e.isConstantLength?function(e){const t=e.encodedLength(void 0),n=e.encodeTo,r=e.decode;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!N(e))throw new TypeError("Expected array.");const n=e.length;if(n>65535)throw new Error("Array too long for OcaList OCP.1 encoding");return 2+n*t},encodeTo:function(e,t,r){const o=r.length;e.setUint16(t,o),t+=2;for(let s=0;s<o;s++)t=n(e,t,r[s]);return t},decodeFrom:function(e,n){const o=e.getUint16(n);n+=2;const s=new Array(o);for(let i=0;i<o;i++)s[i]=r(e,n),n+=t;return[n,s]},decodeLength:function(e,n){return n+(2+e.getUint16(n)*t)}})}(e):function(e){const t=e.encodedLength,n=e.encodeTo,r=e.decodeFrom,o=e.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!N(e))throw new TypeError("Expected array.");const n=e.length;if(n>65535)throw new Error("Array too long for OcaList OCP.1 encoding");let r=2;for(let o=0;o<n;o++)r+=t(e[o]);return r},encodeTo:function(e,t,r){const o=r.length;e.setUint16(t,o),t+=2;for(let s=0;s<o;s++)t=n(e,t,r[s]);return t},decodeFrom:function(e,t){const n=e.getUint16(t);t+=2;const o=new Array(n);for(let s=0;s<n;s++){let n;[t,n]=r(e,t),o[s]=n}return[t,o]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;for(let r=0;r<n;r++)t=o(e,t);return t}})}(e)}const F=new TextEncoder,B=new TextDecoder;function j(e){return F.encode(e)}function V(e,t,n){const r=t;for(;n--;){const n=e.getUint8(t);if(t++,!(n<=127)){if(n<194)throw new Error("Invalid UTF8 sequence.");if(t++,!(n<=223||(t++,n<=239||(t++,n<=244))))throw new Error("Invalid UTF8 sequence.")}}return t-r}const z=a({isConstantLength:!1,encodedLength:function(e){if("string"!=typeof e)throw new TypeError("Expected string.");return 2+j(e).byteLength},encodeTo:function(e,t,n){const r=function(e){let t=0;for(let n=0;n<e.length;n++,t++){const t=e.charCodeAt(n);if(t>=55296&&t<=56319){n++;const t=e.charCodeAt(n);if(t<56320||t>57343)throw new TypeError("Expected valid unicode string.")}}return t}(n);if(r>65535)throw new Error("String too long for OcaString OCP.1 encoding.");e.setUint16(t,r),t+=2;const o=new Uint8Array(j(n));return new Uint8Array(e.buffer,e.byteOffset).set(o,t),t+o.length},decodeFrom:function(e,t){const n=e.getUint16(t),r=V(e,t+=2,n),o=new Uint8Array(e.buffer,e.byteOffset+t,r);return[t+r,(s=o,B.decode(s))];var s},decodeLength:function(e,t){const n=e.getUint16(t);return(t+=2)+V(e,t,n)}}),q=a({isConstantLength:!1,encodedLength:function(e){if("string"!=typeof e)throw new TypeError("Expected string.");const t=e.length;if(t>65535)throw new Error("Array too long for String16 OCP.1 encoding.");return 2+2*t},encodeTo:function(e,t,n){const r=n.length;e.setUint16(t,r,!1),t+=2;for(let o=0;o<r;o++,t+=2)e.setUint16(t,n.charCodeAt(o),!1);return t},decodeFrom:function(e,t){const n=e.getUint16(t,!1);t+=2;const r=new Array(n);for(let o=0;o<n;o++,t+=2)r[o]=e.getUint16(t,!1);return[t,String.fromCharCode.apply(String,r)]},decodeLength:function(e,t){return t+2+2*e.getUint16(t)}});class H{constructor(e,t,n,r){this.ObjectNumber=e,this.Name=t,this.ClassID=n,this.ClassVersion=r}}const W=l({ObjectNumber:d,Name:z,ClassID:q,ClassVersion:c},H);class K{constructor(e,t,n){this.Manufacturer=e,this.Name=t,this.Version=n}}const X=l({Manufacturer:z,Name:z,Version:z},K);class Y{constructor(e,t,n){this.Reserved=e,this.MfrCode=t,this.ModelCode=n}}const Q=l({Reserved:E(1),MfrCode:E(3),ModelCode:E(4)},Y),J=a({isConstantLength:!0,encodedLength:function(e){return 1},encodeTo:function(e,t,n){return e.setUint8(t,0|n),t+1},decode:function(e,t){return e.getUint8(t)}});function Z(e,t){const n=t.encodeTo,r=t.decode,o=a({isConstantLength:!0,encodedLength:t.encodedLength,encodeTo:function(t,r,o){if("object"==typeof o&&o instanceof e)o=o.value;else if("string"==typeof o)o=e.getValue(o);else{if("number"!=typeof o)throw new TypeError("Unsupported type.");e.getName(o)}return n(t,r,o)},decode:function(t,n){const o=r(t,n);return new e(o)}});for(const t in e.values())Object.defineProperty(o,t,{get:function(){return e[t]},enumerable:!1,configurable:!0});return o}function $(e){return Z(e,J)}class ee extends(G({PowerOn:0,InternalError:1,Upgrade:2,ExternalRequest:3})){}const te=$(ee);class ne{constructor(e,t,n){this.object=e,this.id=t,this.handlers=new Set,this.result=null,this.argumentTypes=n}GetOcaEvent(){return new g(this.object.ObjectNumber,this.id)}do_subscribe(){}do_unsubscribe(){}subscribe(e){return this.handlers.add(e),1===this.handlers.size?this.result=this.do_subscribe().then(()=>(this.result=null,!0)):null!==this.result?this.result:Promise.resolve(!0)}unsubscribe(e){return this.handlers.delete(e),this.handlers.size||this.do_unsubscribe().catch((function(){})),Promise.resolve(!0)}Dipose(){this.handlers.clear(),this.handlers.size&&this.do_unsubscribe().catch((function(){}))}}const re=new ArrayBuffer;class oe extends ne{constructor(e,n,r){super(e,n,r),this.callback=e=>{if(!this.handlers.size)return;const n=new Array(r.length),o=new DataView(e.parameters||re);for(let e=0,t=0;t<r.length;t++){let s;[e,s]=r[t].decodeFrom(o,e),n[t]=s}const s=this.object;this.handlers.forEach((function(e){try{e.apply(s,n)}catch(e){t(e)}}))}}do_subscribe(){return this.object.device.add_subscription(this.GetOcaEvent(),this.callback)}do_unsubscribe(e){return this.object.device.remove_subscription(this.GetOcaEvent(),this.callback)}}class se extends ne{constructor(e,n,r){super(e,n,r),this.callback=([n,o,s])=>{if(n.DefLevel!==this.id.DefLevel||n.PropertyIndex!==this.id.PropertyIndex)return;const i=r[0].decodeFrom(o,0)[1];this.handlers.forEach((function(r){try{r.call(e,i,s,n)}catch(e){t(e)}}))}}do_subscribe(){return this.object.OnPropertyChanged.subscribe(this.callback)}do_unsubscribe(e){return this.object.OnPropertyChanged.unsubscribe(this.callback)}}class ie extends(G({CurrentChanged:1,MinChanged:2,MaxChanged:3,ItemAdded:4,ItemChanged:5,ItemDeleted:6})){}class ae{init(e){this.o=e,this.values=[],this.synchronized=!1,this.subscriptions=[]}sync(){if(this.synchronized)return Promise.resolve();let e=0;const t=[];return this.o.get_properties().forEach(n=>{const r=n.getter(this.o);if(!r)return;const o=n.event(this.o);if(o){const n=function(e,t,n){n===ie.CurrentChanged&&(this.values[e]=t)}.bind(this,e);this.subscriptions.push(o.unsubscribe.bind(o,n)),t.push(o.subscribe(n).catch((function(){})))}t.push(r().then(function(e,t){t instanceof D&&(t=t.item(0)),this.values[e]=t}.bind(this,e),(function(){}))),e++}),Promise.all(t)}forEach(e,t){let n=0;t||(t=this),this.o.get_properties().forEach(r=>{r.getter(this.o)&&(e.call(t,this.values[n],r.name),n++)})}Dispose(){this.o=null,this.subscriptions.forEach(e=>e()),this.subscriptions=null}}class ce{constructor(e,t){this.DefLevel=e,this.PropertyIndex=t}}class le{constructor(e,t,n){const r=new Map,o=[];this.by_name=r,this.parent=n,this.properties=o,this.level=t;for(let t=0;t<e.length;t++){const n=e[t];if(r.set(n.name,n),o[n.index]=n,n.aliases){const e=n.aliases;for(let t=0;t<e.length;t++)r.set(e[t],n)}}}find_property(e){if(e instanceof ce){if(e.DefLevel==this.level)return this.properties[e.PropertyIndex];if(this.parent)return this.parent.find_property(e)}else{if("string"!=typeof e)throw new Error("Expected PropertyID");{const t=this.by_name.get(e);if(t)return t;if(this.parent)return this.parent.find_property(e)}}}find_name(e){const t=this.find_property(e);if(t)return t.name}forEach(e,t){const n=this.parent?this.parent.forEach(e,t):[],r=this.properties;for(let o=0;o<r.length;o++){const s=r[o];void 0!==s&&n.push(e.call(t,s))}return n}}class ue{constructor(e,t,n,r,o,s,i){this.name=e,this.type=t,this.level=n,this.index=r,this.readonly=o,this.static=s,this.aliases=i}GetPropertyID(){return new ce(this.level,this.index)}GetName(){return this.name}getter(e,t){let n=this.name,r=0;const o=this.aliases;if(this.static){const t=e.constructor[n];if(void 0!==t)return function(){return Promise.resolve(t)}}else{const r=e["Get"+n];if(r)return t?r:r.bind(e)}return o&&r<o.length&&(n=o[r++]),null}setter(e,t){if(this.readonly||this.static)return null;let n=this.name,r=0;const o=this.aliases;{const s=e["Set"+n];if(s)return t?s:s.bind(e);o&&r<o.length&&(n=o[r++])}return null}event(e){let t=this.name,n=0;const r=this.aliases;{const o=e["On"+t+"Changed"];if(o)return o;r&&n<r.length&&(t=r[n++])}return null}subscribe(e,n){const r=this.event(e),o=this.getter(e);return r&&r.subscribe(n).catch(t),o&&o().then(n,t),r||!!o}}function he(e,t){if(!t||!t.length)return;const[n,r,s,a,c]=t;e.prototype[n]=function(...e){const t=a.length;let n=null;t<e.length&&t+1===e.length&&"function"==typeof e[t]&&(n=e[t],e.length=t);const l=new i(this.ono,r,s,t,new o(a,e));return this.device.send_command(l,c,n)}}function de(e,t){const[n,r,o,s]=t;Object.defineProperty(e.prototype,"On"+n,{get:function(){const e="_On"+n,t=this[e];return t||(this[e]=new oe(this,new u(r,o),s))}})}function ge(e,t){t.static||"ObjectNumber"!==t.name&&Object.defineProperty(e.prototype,"On"+t.name+"Changed",{get:function(){const e="_On"+t.name+"Changed",n=this[e];return n||(this[e]=new se(this,new ce(t.level,t.index),t.type))}})}function fe(e){if("object"==typeof e&&e instanceof ue)return e;if(Array.isArray(e))return"object"!=typeof e[1]&&(e[1]=function(e){throw new Error("Not implemented.")}(e[1])),new ue(...e);throw new Error("Bad property.")}function Se(e,t,n,r,o,s,i,a){let c=null,l=null;i=i.map(e=>fe(e));const u=class extends o{static get ClassID(){return n}static get ClassVersion(){return r}static get ClassName(){return e}static get_properties(){return null===l&&(l=new le(i,t,o.get_properties())),l}static GetPropertySync(){return null===c&&(c=function(e){const t=Object.create(ae.prototype),n=Object.create(e.prototype);let r=0;e.get_properties().forEach(e=>{const o=!!e.setter(n,!0);if(!e.getter(n,!0))return;const s={enumerable:!0,get:(i=r,function(){return this.values[i]})};var i,a;o&&(s.set=(a=e.setter(n,!0),function(e){return a.call(this.o,e),e})),Object.defineProperty(t,e.name,s),r++});const o=function(e){this.init(e)};return o.prototype=t,o}(this)),c}constructor(e,t){super(e,t);for(let e=0;e<i.length;e++){this["_On"+i[e].name+"Changed"]=null}for(let e=0;e<a.length;e++){this["_On"+a[e][0]]=null}}Dispose(){super.Dispose();for(let e=0;e<i.length;e++){const t=this["_On"+i[e].name+"Changed"];t&&t.Dispose()}for(let e=0;e<a.length;e++){const t=this["_On"+a[e][0]];t&&t.Dispose()}}};for(let e=0;e<s.length;e++)he(u,s[e]);for(let e=0;e<i.length;e++)ge(u,i[e]);for(let e=0;e<a.length;e++)de(u,a[e]);return u}class pe{constructor(e,t){this.ClassID=e,this.ClassVersion=t}}const me=l({ClassID:q,ClassVersion:c},pe),ye=l({DefLevel:c,PropertyIndex:c},ce),Oe=$(ie);const be=function(...e){const t=e.length;return a({isConstantLength:!1,encodedLength:function(n){if(!Array.isArray(n)&&!N(n))throw new TypeError("Expected array.");if(n.length!==t)throw new Error("Length mismatch.");let r=0;for(let o=0;o<t;o++)r+=e[o].encodedLength(n[o]);return r},encodeTo:function(n,r,o){for(let s=0;s<t;s++)r=e[s].encodeTo(n,r,o[s]);return r},decodeFrom:function(n,r){const o=new Array(t);for(let s=0;s<t;s++){let t;[r,t]=e[s].decodeFrom(n,r),o[s]=t}return[r,o]},decodeLength:function(n,r){for(let o=0;o<t;o++)r=e[o].decodeLength(n,r);return r}})}(ye,(Ce=1,a({isConstantLength:!1,encodedLength:function(e){if(!("object"==typeof e&&e instanceof DataView))throw new TypeError("Expected DataView.");return e.byteLength-Ce},encodeTo:function(e,t,n){const r=n.byteLength,o=new Uint8Array(n.buffer,n.byteOffset,r);return new Uint8Array(e.buffer,e.byteOffset+t).set(o),t+r},decodeFrom:function(e,t){const n=e.byteLength-t-Ce;return[t+n,new DataView(e.buffer,e.byteOffset+t,n)]},decodeLength:function(e,t){return t+(e.byteLength-t-Ce)}})),Oe);var Ce;const we=Se("OcaRoot",1,"",2,class{constructor(e,t){this.ono=e,this.device=t}get ObjectNumber(){return this.ono}get ClassVersion(){return this.constructor.ClassVersion}get ClassID(){return this.constructor.ClassID}get ClassName(){return this.constructor.ClassName}sendCommandRrq(e,t,n,r,o){const s=new i(this.ono,e,t,n,r);return this.device.send_command(s,o)}GetPropertyName(e){return this.get_properties().find_name(e)}GetPropertyID(e){const t=this.get_properties().find_property(e);if(t)return t.GetPropertyID()}static get_properties(){return null}get_properties(){return this.constructor.get_properties()}get __oca_properties__(){return this.get_properties()}GetPropertySync(){return new(this.constructor.GetPropertySync())(this)}Dispose(){}},[["GetClassIdentification",1,1,[],[me]],["GetLockable",1,2,[],[k]],["LockTotal",1,3,[],[]],["Unlock",1,4,[],[]],["GetRole",1,5,[],[z]],["LockReadonly",1,6,[],[]]],[["ClassID",[q],1,1,!0,!0,null],["ClassVersion",[c],1,2,!0,!0,null],["ObjectNumber",[d],1,3,!0,!1,null],["Lockable",[k],1,4,!0,!1,null],["Role",[z],1,5,!0,!1,null]],[["PropertyChanged",1,1,[be]]]),Pe=Se("OcaManager",2,"",2,we,[],[],[]),_e=Se("OcaDeviceManager",3,"",2,Pe,[["GetOcaVersion",3,1,[],[c]],["GetModelGUID",3,2,[],[Q]],["GetSerialNumber",3,3,[],[z]],["GetDeviceName",3,4,[],[z]],["SetDeviceName",3,5,[z],[]],["GetModelDescription",3,6,[],[X]],["GetDeviceRole",3,7,[],[z]],["SetDeviceRole",3,8,[z],[]],["GetUserInventoryCode",3,9,[],[z]],["SetUserInventoryCode",3,10,[z],[]],["GetEnabled",3,11,[],[k]],["SetEnabled",3,12,[k],[]],["GetState",3,13,[],[U]],["SetResetKey",3,14,[E(16),A],[]],["GetResetCause",3,15,[],[te]],["ClearResetCause",3,16,[],[]],["GetMessage",3,17,[],[z]],["SetMessage",3,18,[z],[]],["GetManagers",3,19,[],[R(W)]],["GetDeviceRevisionID",3,20,[],[z]]],[["ModelGUID",[Q],3,1,!1,!1,null],["SerialNumber",[z],3,2,!1,!1,null],["ModelDescription",[X],3,3,!1,!1,null],["DeviceName",[z],3,4,!1,!1,null],["OcaVersion",[c],3,5,!1,!1,null],["DeviceRole",[z],3,6,!1,!1,null],["UserInventoryCode",[z],3,7,!1,!1,null],["Enabled",[k],3,8,!1,!1,null],["State",[U],3,9,!1,!1,null],["Busy",[k],3,10,!1,!1,null],["ResetCause",[te],3,11,!1,!1,null],["Message",[z],3,12,!1,!1,null],["Managers",[R(W)],3,13,!1,!1,null],["DeviceRevisionID",[z],3,14,!0,!1,null]],[]),Ge=Se("OcaSecurityManager",3,"",2,Pe,[["AddPreSharedKey",3,4,[z,A],[]],["ChangePreSharedKey",3,3,[z,A],[]],["DeletePreSharedKey",3,5,[z],[]],["DisableControlSecurity",3,2,[],[]],["EnableControlSecurity",3,1,[],[]]],[["secureControlData",[k],3,1,!1,!1,null]],[]);class ve extends(G({BootLoader:0})){}const Te=Z(ve,c);class De{constructor(e,t,n,r){this.Major=e,this.Minor=t,this.Build=n,this.Component=r}}const Ie=l({Major:d,Minor:d,Build:d,Component:Te},De),Me=Se("OcaFirmwareManager",3,"",2,Pe,[["GetComponentVersions",3,1,[],[R(Ie)]],["StartUpdateProcess",3,2,[],[]],["BeginActiveImageUpdate",3,3,[Te],[]],["AddImageData",3,4,[d,A],[]],["VerifyImage",3,5,[A],[]],["EndActiveImageUpdate",3,6,[],[]],["BeginPassiveComponentUpdate",3,7,[Te,A,z],[]],["EndUpdateProcess",3,8,[],[]]],[["ComponentVersions",[R(Ie)],3,1,!1,!1,null]],[]);class Le{constructor(e,t){this.DefLevel=e,this.MethodIndex=t}}const Ae=l({DefLevel:c,MethodIndex:c},Le);class Ee{constructor(e,t){this.ONo=e,this.MethodID=t}}const ke=l({ONo:d,MethodID:Ae},Ee);class xe extends(G({Reliable:1,Fast:2})){}const Ue=$(xe);class Ne{constructor(e){this.objectList=e}}const Re=l({objectList:R(d)},Ne);class Fe extends(G({Normal:1,EventsDisabled:2})){}const Be=$(Fe),je=Se("OcaSubscriptionManager",3,"",2,Pe,[["RemoveSubscription",3,2,[f,ke],[]],["AddSubscription",3,1,[f,ke,A,Ue,A],[]],["DisableNotifications",3,3,[],[]],["ReEnableNotifications",3,4,[],[]],["AddPropertyChangeSubscription",3,5,[d,ye,ke,A,Ue,A],[]],["RemovePropertyChangeSubscription",3,6,[d,ye,ke],[]],["GetMaximumSubscriberContextLength",3,7,[],[c]]],[["State",[Be],3,1,!1,!1,null]],[["NotificationsDisabled",3,1,[]],["SynchronizeState",3,2,[Re]]]);class Ve extends(G({None:0,Working:1,Standby:2,Off:3})){}const ze=$(Ve),qe=Se("OcaPowerManager",3,"",2,Pe,[["GetState",3,1,[],[ze]],["SetState",3,2,[ze],[]],["GetPowerSupplies",3,3,[],[R(d)]],["GetActivePowerSupplies",3,4,[],[R(d)]],["ExchangePowerSupply",3,5,[d,d,k],[]],["GetAutoState",3,6,[],[k]]],[["State",[ze],3,1,!1,!1,null],["PowerSupplies",[R(d)],3,2,!1,!1,null],["ActivePowerSupplies",[R(d)],3,3,!1,!1,null],["AutoState",[k],3,4,!1,!1,null],["TargetState",[ze],3,5,!1,!1,null]],[]),He=Se("OcaNetworkManager",3,"",2,Pe,[["GetNetworks",3,1,[],[R(d)]],["GetStreamNetworks",3,2,[],[R(d)]],["GetControlNetworks",3,3,[],[R(d)]],["GetMediaTransportNetworks",3,4,[],[R(d)]]],[["Networks",[R(d)],3,1,!1,!1,null],["StreamNetworks",[R(d)],3,2,!1,!1,null],["ControlNetworks",[R(d)],3,3,!1,!1,null],["MediaTransportNetworks",[R(d)],3,4,!1,!1,null]],[]);class We extends(G({None:0,Internal:1,Network:2,External:3})){}const Ke=$(We),Xe=Se("OcaMediaClockManager",3,"",2,Pe,[["GetClocks",3,1,[],[R(d)]],["GetMediaClockTypesSupported",3,2,[],[R(Ke)]],["GetClock3s",3,3,[],[R(d)]]],[["ClockSourceTypesSupported",[R(Ke)],3,1,!1,!1,["MediaClockTypesSupported"]],["Clocks",[R(d)],3,2,!1,!1,null],["Clock3s",[R(d)],3,3,!1,!1,null]],[]);class Ye{constructor(e,t){this.Library=e,this.ID=t}}const Qe=l({Library:d,ID:d},Ye);class Je{constructor(e,t){this.Authority=e,this.ID=t}}const Ze=l({Authority:E(3),ID:d},Je);class $e{constructor(e,t){this.Type=e,this.ONo=t}}const et=l({Type:Ze,ONo:d},$e),tt=Se("OcaLibraryManager",3,"\b",2,Pe,[["AddLibrary",3,1,[Ze],[et]],["DeleteLibrary",3,2,[d],[]],["GetLibraryCount",3,3,[Ze],[c]],["GetLibraryList",3,4,[Ze],[R(et)]],["GetCurrentPatch",3,5,[],[Qe]],["ApplyPatch",3,6,[Qe],[]]],[["Libraries",[R(et)],3,1,!1,!1,null],["CurrentPatch",[Qe],3,2,!1,!1,null]],[]),nt=Se("OcaAudioProcessingManager",3,"\t",2,Pe,[],[],[]),rt="undefined"!=typeof BigInt,ot=rt&&(BigInt(1)<<BigInt(64))-BigInt(1),st=rt&&ot>>BigInt(1),it=rt&&-st-BigInt(1),at=rt&&(BigInt(1)<<BigInt(55))-BigInt(1);rt&&BigInt(1);function ct(){if(!rt)throw new Error("Missing BigInt support")}const lt=a({isConstantLength:!0,encodedLength:function(e){return 8},encodeTo:function(e,t,n){if(ct(),!(n<=ot&&n>=0))throw new TypeError("Uint64 out of range.");return e.setBigUint64(t,BigInt(n),!1),t+8},decode:function(e,t){ct();const n=e.getBigUint64(t,!1);return n<=Number.MAX_SAFE_INTEGER?Number(n):n}});class ut{constructor(e,t,n){this.Negative=e,this.Seconds=t,this.Nanoseconds=n}}const ht=l({Negative:k,Seconds:lt,Nanoseconds:d},ut),dt=Se("OcaDeviceTimeManager",3,"\n",2,Pe,[["GetDeviceTimeNTP",3,1,[],[lt]],["SetDeviceTimeNTP",3,2,[lt],[]],["GetTimeSources",3,3,[],[R(d)]],["GetCurrentDeviceTimeSource",3,4,[],[d]],["SetCurrentDeviceTimeSource",3,5,[d],[]],["GetDeviceTimePTP",3,6,[],[ht]],["SetDeviceTimePTP",3,7,[ht],[]]],[["TimeSources",[R(d)],3,1,!1,!1,null],["CurrentDeviceTimeSource",[d],3,2,!1,!1,null]],[]);function gt(e,t){const n=e.encodedLength,r=e.encodeTo,o=e.decodeFrom,s=e.decodeLength,i=t.encodedLength,c=t.encodeTo,l=t.decodeFrom,u=t.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!(e instanceof Map||e instanceof WeakMap))throw new TypeError("Expected Map or WeakMap");let t=2;return e.forEach((e,r)=>{t+=n(r),t+=i(e)}),t},encodeTo:function(e,t,n){return e.setUint16(t,n.size),t+=2,n.forEach((n,o)=>{t=r(e,t,o),t=c(e,t,n)}),t},decodeFrom:function(e,t){const n=new Map,r=e.getUint16(t);t+=2;for(let s=0;s<r;s++){let r,s;[t,r]=o(e,t),[t,s]=l(e,t),n.set(r,s)}if(n.size!==r)throw new Error("Key appeared twice in decoded Map.");return[t,n]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;for(let r=0;r<n;r++)t=s(e,t),t=u(e,t);return t}})}class ft extends(G({Absolute:1,Relative:2})){}const St=$(ft);class pt{constructor(e,t,n,r,o,s,i,a,c){this.ID=e,this.Label=t,this.ProgramID=n,this.GroupID=r,this.TimeMode=o,this.TimeSourceONo=s,this.StartTime=i,this.Duration=a,this.ApplicationSpecificParameters=c}}const mt=l({ID:d,Label:z,ProgramID:Qe,GroupID:c,TimeMode:St,TimeSourceONo:d,StartTime:ht,Duration:ht,ApplicationSpecificParameters:A},pt);class yt extends(G({None:0,Prepare:1,Enable:2,Start:3,Stop:4,Abort:5,Disable:6,Clear:7})){}const Ot=$(yt);class bt extends(G({None:0,Enabled:1,Disabled:2})){}const Ct=$(bt);class wt extends(G({None:0,NotPrepared:1,Disabled:2,Enabled:3,Running:4,Completed:5,Failed:6,Stopped:7,Aborted:8})){}const Pt=$(wt);class _t{constructor(e,t,n){this.ID=e,this.State=t,this.ErrorCode=n}}const Gt=l({ID:d,State:Pt,ErrorCode:c},_t);class vt{constructor(e,t,n){this.TaskID=e,this.ProgramID=t,this.Status=n}}const Tt=l({TaskID:d,ProgramID:Qe,Status:Gt},vt),Dt=Se("OcaTaskManager",3,"\v",1,Pe,[["Enable",3,1,[k],[]],["ControlAllTasks",3,2,[Ot,A],[]],["ControlTaskGroup",3,3,[c,Ot,A],[]],["ControlTask",3,4,[d,Ot,A],[]],["GetState",3,5,[],[Ct]],["GetTaskStatuses",3,6,[],[Gt]],["GetTaskStatus",3,7,[d],[Gt]],["AddTask",3,8,[mt],[mt]],["GetTasks",3,9,[],[gt(d,mt)]],["GetTask",3,10,[d],[mt]],["SetTask",3,11,[d,mt],[]],["DeleteTask",3,12,[d],[]]],[["State",[Ct],3,1,!1,!1,null],["Tasks",[gt(d,mt)],3,2,!1,!1,null]],[["TaskStateChanged",3,1,[Tt]]]),It=Se("OcaCodingManager",3,"\f",1,Pe,[["GetAvailableEncodingSchemes",3,1,[],[gt(c,z)]],["GetAvailableDecodingSchemes",3,2,[],[gt(c,z)]]],[["AvailableEncodingSchemes",[gt(c,z)],3,1,!1,!1,null],["AvailableDecodingSchemes",[gt(c,z)],3,2,!1,!1,null]],[]),Mt=Se("OcaDiagnosticManager",3,"\r",1,Pe,[["GetLockStatus",3,1,[d],[z]]],[],[]);class Lt{constructor(e,t){this.ONo=e,this.ClassIdentification=t}}const At=l({ONo:d,ClassIdentification:me},Lt);class Et{constructor(e,t){this.MemberObjectIdentification=e,this.ContainerObjectNumber=t}}const kt=l({MemberObjectIdentification:At,ContainerObjectNumber:d},Et);class xt{constructor(e,t){this.Authority=e,this.ID=t}}const Ut=l({Authority:E(3),ID:d},xt);class Nt{constructor(e,t){this.TargetBlockType=e,this.ParData=t}}const Rt=l({TargetBlockType:d,ParData:A},Nt);class Ft{constructor(e,t,n,r,o){this.ONo=e,this.ClassIdentification=t,this.ContainerPath=n,this.Role=r,this.Label=o}}const Bt=l({ONo:d,ClassIdentification:me,ContainerPath:R(d),Role:z,Label:z},Ft),jt=x;class Vt extends(G({Input:1,Output:2})){}const zt=$(Vt);class qt{constructor(e,t){this.Mode=e,this.Index=t}}const Ht=l({Mode:zt,Index:c},qt);class Wt{constructor(e,t,n){this.Owner=e,this.ID=t,this.Name=n}}const Kt=l({Owner:d,ID:Ht,Name:z},Wt);class Xt{constructor(e,t){this.SourcePort=e,this.SinkPort=t}}const Yt=l({SourcePort:Kt,SinkPort:Kt},Xt);class Qt extends(G({Exact:0,Substring:1,Contains:2,ExactCaseInsensitive:3,SubstringCaseInsensitive:4,ContainsCaseInsensitive:5})){}const Jt=$(Qt),Zt=a({isConstantLength:!0,encodedLength:function(e){return 4},encodeTo:function(e,t,n){return e.setFloat32(t,+n,!1),t+4},decode:function(e,t){return e.getFloat32(t,!1)}}),$t=Se("OcaWorker",2,"",2,we,[["GetEnabled",2,1,[],[k]],["SetEnabled",2,2,[k],[]],["AddPort",2,3,[z,zt],[Ht]],["DeletePort",2,4,[Ht],[]],["GetPorts",2,5,[],[R(Kt)]],["GetPortName",2,6,[Ht],[z]],["SetPortName",2,7,[Ht,z],[]],["GetLabel",2,8,[],[z]],["SetLabel",2,9,[z],[]],["GetOwner",2,10,[],[d]],["GetLatency",2,11,[],[Zt]],["SetLatency",2,12,[Zt],[]],["GetPath",2,13,[],[R(z),R(d)]]],[["Enabled",[k],2,1,!1,!1,null],["Ports",[R(Kt)],2,2,!1,!1,null],["Label",[z],2,3,!1,!1,null],["Owner",[d],2,4,!1,!1,null],["Latency",[Zt],2,5,!1,!1,null]],[]),en=Se("OcaBlock",3,"",2,$t,[["GetType",3,1,[],[d]],["ConstructMemberUsingFactory",3,3,[d],[d]],["DeleteMember",3,4,[d],[]],["GetMembers",3,5,[],[R(At)]],["GetMembersRecursive",3,6,[],[R(kt)]],["AddSignalPath",3,7,[Yt],[c]],["DeleteSignalPath",3,8,[c],[]],["GetSignalPaths",3,9,[],[gt(c,Yt)]],["GetSignalPathsRecursive",3,10,[],[gt(c,Yt)]],["GetMostRecentParamSetIdentifier",3,11,[],[Qe]],["ApplyParamSet",3,12,[],[Qe]],["GetCurrentParamSetData",3,13,[],[Rt]],["StoreCurrentParamSetData",3,14,[Qe],[]],["GetGlobalType",3,15,[],[Ut]],["GetONoMap",3,16,[],[gt(d,d)]],["FindObjectsByRole",3,17,[z,Jt,q,jt],[R(Bt)]],["FindObjectsByRoleRecursive",3,18,[z,Jt,q,jt],[R(Bt)]],["FindObjectsByPath",3,20,[R(z),jt],[R(Bt)]],["FindObjectsByLabelRecursive",3,19,[z,Jt,q,jt],[R(Bt)]]],[["Type",[d],3,1,!0,!1,null],["Members",[R(At)],3,2,!1,!1,null],["SignalPaths",[gt(c,Yt)],3,3,!1,!1,null],["MostRecentParamSetIdentifier",[Qe],3,4,!1,!1,null],["GlobalType",[Ut],3,5,!0,!1,null],["ONoMap",[gt(d,d)],3,6,!0,!1,null]],[]),tn=Se("OcaActuator",3,"",2,$t,[],[],[]);class nn extends(G({Muted:1,Unmuted:2})){}const rn=$(nn),on=Se("OcaMute",4,"",2,tn,[["GetState",4,1,[],[rn]],["SetState",4,2,[rn],[]]],[["State",[rn],4,1,!1,!1,null]],[]);class sn extends(G({NonInverted:1,Inverted:2})){}const an=$(sn),cn=Se("OcaPolarity",4,"",2,tn,[["GetState",4,1,[],[an]],["SetState",4,2,[an],[]]],[["State",[an],4,1,!1,!1,null]],[]),ln=Se("OcaSwitch",4,"",2,tn,[["GetPosition",4,1,[],[c,c,c]],["SetPosition",4,2,[c],[]],["GetPositionName",4,3,[c],[z]],["SetPositionName",4,4,[c,z],[]],["GetPositionNames",4,5,[],[R(z)]],["SetPositionNames",4,6,[R(z)],[]],["GetPositionEnabled",4,7,[c],[k]],["SetPositionEnabled",4,8,[c,k],[]],["GetPositionEnableds",4,9,[],[R(k)]],["SetPositionEnableds",4,10,[R(k)],[]]],[["Position",[c],4,1,!1,!1,null],["PositionNames",[R(z)],4,2,!1,!1,null],["PositionEnableds",[R(k)],4,3,!1,!1,null]],[]),un=Se("OcaGain",4,"",2,tn,[["GetGain",4,1,[],[Zt,Zt,Zt]],["SetGain",4,2,[Zt],[]]],[["Gain",[Zt],4,1,!1,!1,null]],[]),hn=Se("OcaPanBalance",4,"",2,tn,[["GetPosition",4,1,[],[Zt,Zt,Zt]],["SetPosition",4,2,[Zt],[]],["GetMidpointGain",4,3,[],[Zt,Zt,Zt]],["SetMidpointGain",4,4,[Zt],[]]],[["Position",[Zt],4,1,!1,!1,null],["MidpointGain",[Zt],4,2,!1,!1,null]],[]),dn=Se("OcaDelay",4,"",2,tn,[["GetDelayTime",4,1,[],[Zt,Zt,Zt]],["SetDelayTime",4,2,[Zt],[]]],[["DelayTime",[Zt],4,1,!1,!1,null]],[]);class gn extends(G({Time:1,Distance:2,Samples:3,Microseconds:4,Milliseconds:5,Centimeters:6,Inches:7,Feet:8})){}const fn=$(gn);class Sn{constructor(e,t){this.DelayValue=e,this.DelayUnit=t}}const pn=l({DelayValue:Zt,DelayUnit:fn},Sn),mn=Se("OcaDelayExtended",5,"",2,dn,[["GetDelayValue",5,1,[],[pn,pn,pn]],["SetDelayValue",5,2,[pn],[]],["GetDelayValueConverted",5,3,[fn],[pn]]],[["DelayValue",[pn],5,1,!1,!1,null]],[]),yn=Se("OcaFrequencyActuator",4,"\b",2,tn,[["GetFrequency",4,1,[],[Zt,Zt,Zt]],["SetFrequency",4,2,[Zt],[]]],[["Frequency",[Zt],4,1,!1,!1,null]],[]);class On extends(G({Butterworth:1,Bessel:2,Chebyshev:3,LinkwitzRiley:4})){}const bn=$(On);class Cn extends(G({HiPass:1,LowPass:2,BandPass:3,BandReject:4,AllPass:5})){}const wn=$(Cn),Pn=x,_n=Se("OcaFilterClassical",4,"\t",2,tn,[["GetFrequency",4,1,[],[Zt,Zt,Zt]],["SetFrequency",4,2,[Zt],[]],["GetPassband",4,3,[],[wn]],["SetPassband",4,4,[wn],[]],["GetShape",4,5,[],[bn]],["SetShape",4,6,[bn],[]],["GetOrder",4,7,[],[c,c,c]],["SetOrder",4,8,[c],[]],["GetParameter",4,9,[],[Zt,Zt,Zt]],["SetParameter",4,10,[Zt],[]],["SetMultiple",4,11,[Pn,Zt,wn,bn,c,Zt],[]]],[["Frequency",[Zt],4,1,!1,!1,null],["Passband",[wn],4,2,!1,!1,null],["Shape",[bn],4,3,!1,!1,null],["Order",[c],4,4,!1,!1,null],["Parameter",[Zt],4,5,!1,!1,null]],[]);class Gn extends(G({None:0,PEQ:1,LowShelv:2,HighShelv:3,LowPass:4,HighPass:5,BandPass:6,AllPass:7,Notch:8,ToneControlLowFixed:9,ToneControlLowSliding:10,ToneControlHighFixed:11,ToneControlHighSliding:12})){}const vn=$(Gn),Tn=Se("OcaFilterParametric",4,"\n",2,tn,[["GetFrequency",4,1,[],[Zt,Zt,Zt]],["SetFrequency",4,2,[Zt],[]],["GetShape",4,3,[],[vn]],["SetShape",4,4,[vn],[]],["GetWidthParameter",4,5,[],[Zt,Zt,Zt]],["SetWidthParameter",4,6,[Zt],[]],["GetInbandGain",4,7,[],[Zt,Zt,Zt]],["SetInbandGain",4,8,[Zt],[]],["GetShapeParameter",4,9,[],[Zt,Zt,Zt]],["SetShapeParameter",4,10,[Zt],[]],["SetMultiple",4,11,[Pn,Zt,vn,Zt,Zt,Zt],[]]],[["Frequency",[Zt],4,1,!1,!1,null],["Shape",[vn],4,2,!1,!1,null],["WidthParameter",[Zt],4,3,!1,!1,["Q"]],["InbandGain",[Zt],4,4,!1,!1,null],["ShapeParameter",[Zt],4,5,!1,!1,null]],[]),Dn=Se("OcaFilterPolynomial",4,"\v",2,tn,[["GetCoefficients",4,1,[],[R(Zt),R(Zt)]],["SetCoefficients",4,2,[R(Zt),R(Zt)],[]],["GetSampleRate",4,3,[],[Zt,Zt,Zt]],["SetSampleRate",4,4,[Zt],[]],["GetMaxOrder",4,5,[],[J]]],[["A",[R(Zt)],4,1,!1,!1,null],["B",[R(Zt)],4,2,!1,!1,null],["SampleRate",[Zt],4,3,!1,!1,null],["MaxOrder",[J],4,4,!0,!1,null]],[]),In=Se("OcaFilterFIR",4,"\f",2,tn,[["GetLength",4,1,[],[d,d,d]],["GetCoefficients",4,2,[],[R(Zt)]],["SetCoefficients",4,3,[R(Zt)],[]],["GetSampleRate",4,4,[],[Zt,Zt,Zt]],["SetSampleRate",4,5,[Zt],[]]],[["Length",[d],4,1,!1,!1,null],["Coefficients",[R(Zt)],4,2,!1,!1,null],["SampleRate",[Zt],4,3,!1,!1,null]],[]);class Mn{constructor(e,t,n){this.Frequency=e,this.Amplitude=t,this.Phase=n}}const Ln=l({Frequency:R(Zt),Amplitude:R(Zt),Phase:R(Zt)},Mn),An=Se("OcaFilterArbitraryCurve",4,"\r",2,tn,[["GetTransferFunction",4,1,[],[Ln]],["SetTransferFunction",4,2,[Ln],[]],["GetSampleRate",4,3,[],[Zt,Zt,Zt]],["SetSampleRate",4,4,[Zt],[]],["GetTFMinLength",4,5,[],[c]],["GetTFMaxLength",4,6,[],[c]]],[["TransferFunction",[Ln],4,1,!1,!1,null],["SampleRate",[Zt],4,2,!1,!1,null],["TFMinLength",[c],4,3,!1,!1,null],["TFMaxLength",[c],4,4,!1,!1,null]],[]);class En{constructor(e,t){this.Value=e,this.Ref=t}}const kn=l({Value:Zt,Ref:Zt},En);class xn extends(G({None:0,Compress:1,Limit:2,Expand:3,Gate:4})){}const Un=$(xn);class Nn extends(G({None:0,RMS:1,Peak:2})){}const Rn=$(Nn);class Fn extends(G({dBu:0,dBV:1,V:2})){}const Bn=$(Fn),jn=Se("OcaDynamics",4,"",2,tn,[["GetTriggered",4,1,[],[k]],["GetDynamicGain",4,2,[],[Zt]],["GetFunction",4,3,[],[Un]],["SetFunction",4,4,[Un],[]],["GetRatio",4,5,[],[Zt,Zt,Zt]],["SetRatio",4,6,[Zt],[]],["GetThreshold",4,7,[],[kn,Zt,Zt]],["SetThreshold",4,8,[kn],[]],["GetThresholdPresentationUnits",4,9,[],[Bn]],["SetThresholdPresentationUnits",4,10,[Bn],[]],["GetDetectorLaw",4,11,[],[Rn]],["SetDetectorLaw",4,12,[Rn],[]],["GetAttackTime",4,13,[],[Zt,Zt,Zt]],["SetAttackTime",4,14,[Zt],[]],["GetReleaseTime",4,15,[],[Zt,Zt,Zt]],["SetReleaseTime",4,16,[Zt],[]],["GetHoldTime",4,17,[],[Zt,Zt,Zt]],["SetHoldTime",4,18,[Zt],[]],["GetDynamicGainFloor",4,19,[],[Zt,Zt,Zt]],["SetDynamicGainFloor",4,20,[Zt],[]],["GetDynamicGainCeiling",4,21,[],[Zt,Zt,Zt]],["SetDynamicGainCeiling",4,22,[Zt],[]],["GetKneeParameter",4,23,[],[Zt,Zt,Zt]],["SetKneeParameter",4,24,[Zt],[]],["GetSlope",4,25,[],[Zt,Zt,Zt]],["SetSlope",4,26,[Zt],[]],["SetMultiple",4,27,[Pn,Un,kn,Bn,Rn,Zt,Zt,Zt,Zt,Zt,Zt,Zt],[]]],[["Triggered",[k],4,1,!1,!1,null],["DynamicGain",[Zt],4,2,!1,!1,null],["Function",[Un],4,3,!1,!1,null],["Ratio",[Zt],4,4,!1,!1,null],["Threshold",[kn],4,5,!1,!1,null],["ThresholdPresentationUnits",[Bn],4,6,!1,!1,null],["DetectorLaw",[Rn],4,7,!1,!1,null],["AttackTime",[Zt],4,8,!1,!1,null],["ReleaseTime",[Zt],4,9,!1,!1,null],["HoldTime",[Zt],4,10,!1,!1,null],["DynamicGainCeiling",[Zt],4,11,!1,!1,null],["DynamicGainFloor",[Zt],4,12,!1,!1,null],["KneeParameter",[Zt],4,13,!1,!1,null],["Slope",[Zt],4,14,!1,!1,null]],[]),Vn=Se("OcaDynamicsDetector",4,"",2,tn,[["GetLaw",4,1,[],[Rn]],["SetLaw",4,2,[Rn],[]],["GetAttackTime",4,3,[],[Zt,Zt,Zt]],["SetAttackTime",4,4,[Zt],[]],["GetReleaseTime",4,5,[],[Zt,Zt,Zt]],["SetReleaseTime",4,6,[Zt],[]],["GetHoldTime",4,7,[],[Zt,Zt,Zt]],["SetHoldTime",4,8,[Zt],[]],["SetMultiple",4,9,[Pn,Rn,Zt,Zt,Zt],[]]],[["Law",[Rn],4,1,!1,!1,null],["AttackTime",[Zt],4,2,!1,!1,null],["ReleaseTime",[Zt],4,3,!1,!1,null],["HoldTime",[Zt],4,4,!1,!1,null]],[]),zn=Se("OcaDynamicsCurve",4,"",2,tn,[["GetNSegments",4,1,[],[J,J,J]],["SetNSegments",4,2,[J],[]],["GetThreshold",4,3,[],[R(kn),Zt,Zt]],["SetThreshold",4,4,[R(kn)],[]],["GetSlope",4,5,[],[R(Zt),R(Zt),R(Zt)]],["SetSlope",4,6,[R(Zt)],[]],["GetKneeParameter",4,7,[],[R(Zt),R(Zt),R(Zt)]],["SetKneeParameter",4,8,[R(Zt)],[]],["GetDynamicGainCeiling",4,9,[],[Zt,Zt,Zt]],["SetDynamicGainCeiling",4,10,[Zt],[]],["GetDynamicGainFloor",4,11,[],[Zt,Zt,Zt]],["SetDynamicGainFloor",4,12,[Zt],[]],["SetMultiple",4,13,[Pn,J,R(kn),R(Zt),R(Zt),Zt,Zt],[]]],[["NSegments",[J],4,1,!1,!1,null],["Threshold",[R(kn)],4,2,!1,!1,null],["Slope",[R(Zt)],4,3,!1,!1,null],["KneeParameter",[R(Zt)],4,4,!1,!1,null],["DynamicGainFloor",[Zt],4,5,!1,!1,null],["DynamicGainCeiling",[Zt],4,6,!1,!1,null]],[]);class qn extends(G({Linear:1,Logarithmic:2,None:0})){}const Hn=$(qn);class Wn extends(G({None:0,DC:1,Sine:2,Square:3,Impulse:4,NoisePink:5,NoiseWhite:6,PolarityTest:7})){}const Kn=$(Wn),Xn=Se("OcaSignalGenerator",4,"",2,tn,[["GetFrequency1",4,1,[],[Zt,Zt,Zt]],["SetFrequency1",4,2,[Zt],[]],["GetFrequency2",4,3,[],[Zt,Zt,Zt]],["SetFrequency2",4,4,[Zt],[]],["GetLevel",4,5,[],[Zt,Zt,Zt]],["SetLevel",4,6,[Zt],[]],["GetWaveform",4,7,[],[Kn]],["SetWaveform",4,8,[Kn],[]],["GetSweepType",4,9,[],[Hn]],["SetSweepType",4,10,[Hn],[]],["GetSweepTime",4,11,[],[Zt,Zt,Zt]],["SetSweepTime",4,12,[Zt],[]],["GetSweepRepeat",4,13,[],[k]],["SetSweepRepeat",4,14,[k],[]],["GetGenerating",4,15,[],[k]],["Start",4,16,[],[]],["Stop",4,17,[],[]],["SetMultiple",4,18,[Pn,Zt,Zt,Zt,Kn,Hn,Zt,k],[]]],[["Frequency1",[Zt],4,1,!1,!1,null],["Frequency2",[Zt],4,2,!1,!1,null],["Level",[Zt],4,3,!1,!1,null],["Waveform",[Kn],4,4,!1,!1,null],["SweepType",[Hn],4,5,!1,!1,null],["SweepTime",[Zt],4,6,!1,!1,null],["SweepRepeat",[k],4,7,!1,!1,null],["Generating",[k],4,8,!1,!1,null]],[]),Yn=Se("OcaSignalInput",4,"",2,tn,[],[],[]),Qn=Se("OcaSignalOutput",4,"",2,tn,[],[],[]),Jn=Se("OcaTemperatureActuator",4,"",2,tn,[["GetTemperature",4,1,[],[Zt,Zt,Zt]],["SetTemperature",4,2,[Zt],[]]],[["Temperature",[Zt],4,1,!1,!1,null]],[]),Zn=Se("OcaIdentificationActuator",4,"",2,tn,[["GetActive",4,1,[],[k]],["SetActive",4,2,[k],[]]],[["Active",[k],4,1,!1,!1,null]],[]),$n=Se("OcaSummingPoint",4,"",1,tn,[],[],[]),er=Se("OcaBasicActuator",4,"",2,tn,[],[],[]),tr=Se("OcaBooleanActuator",5,"",2,er,[["GetSetting",5,1,[],[k]],["SetSetting",5,2,[k],[]]],[["Setting",[k],5,1,!1,!1,null]],[]),nr=a({isConstantLength:!0,encodedLength:function(e){return 1},encodeTo:function(e,t,n){return e.setInt8(t,0|n),t+1},decode:function(e,t){return e.getInt8(t)}}),rr=Se("OcaInt8Actuator",5,"",2,er,[["GetSetting",5,1,[],[nr,nr,nr]],["SetSetting",5,2,[nr],[]]],[["Setting",[nr],5,1,!1,!1,null]],[]),or=a({isConstantLength:!0,encodedLength:function(e){return 2},encodeTo:function(e,t,n){return e.setInt16(t,0|n,!1),t+2},decode:function(e,t){return e.getInt16(t,!1)}}),sr=Se("OcaInt16Actuator",5,"",2,er,[["GetSetting",5,1,[],[or,or,or]],["SetSetting",5,2,[or],[]]],[["Setting",[or],5,1,!1,!1,null]],[]),ir=a({isConstantLength:!0,encodedLength:function(e){return 4},encodeTo:function(e,t,n){return e.setInt32(t,0|n,!1),t+4},decode:function(e,t){return e.getInt32(t,!1)}}),ar=Se("OcaInt32Actuator",5,"",2,er,[["GetSetting",5,1,[],[ir,ir,ir]],["SetSetting",5,2,[ir],[]]],[["Setting",[ir],5,1,!1,!1,null]],[]);function cr(){if(!rt)throw new Error("Missing BigInt support")}const lr=a({isConstantLength:!0,encodedLength:function(e){return 8},encodeTo:function(e,t,n){if(cr(),!(n>=it&&n<=st))throw new TypeError("Int64 out of range.");return e.setBigInt64(t,BigInt(n),!1),t+8},decode:function(e,t){cr();const n=e.getBigInt64(t,!1);return n>=Number.MIN_SAFE_INTEGER&&n<=Number.MAX_SAFE_INTEGER?Number(n):n}}),ur=Se("OcaInt64Actuator",5,"",2,er,[["GetSetting",5,1,[],[lr,lr,lr]],["SetSetting",5,2,[lr],[]]],[["Setting",[lr],5,1,!1,!1,null]],[]),hr=Se("OcaUint8Actuator",5,"",2,er,[["GetSetting",5,1,[],[J,J,J]],["SetSetting",5,2,[J],[]]],[["Setting",[J],5,1,!1,!1,null]],[]),dr=Se("OcaUint16Actuator",5,"",2,er,[["GetSetting",5,1,[],[c,c,c]],["SetSetting",5,2,[c],[]]],[["Setting",[c],5,1,!1,!1,null]],[]),gr=Se("OcaUint32Actuator",5,"\b",2,er,[["GetSetting",5,1,[],[d,d,d]],["SetSetting",5,2,[d],[]]],[["Setting",[d],5,1,!1,!1,null]],[]),fr=Se("OcaUint64Actuator",5,"\t",2,er,[["GetSetting",5,1,[],[lt,lt,lt]],["SetSetting",5,2,[lt],[]]],[["Setting",[lt],5,1,!1,!1,null]],[]),Sr=Se("OcaFloat32Actuator",5,"\n",2,er,[["GetSetting",5,1,[],[Zt,Zt,Zt]],["SetSetting",5,2,[Zt],[]]],[["Setting",[Zt],5,1,!1,!1,null]],[]),pr=a({isConstantLength:!0,encodedLength:function(e){return 8},encodeTo:function(e,t,n){return e.setFloat64(t,+n,!1),t+8},decode:function(e,t){return e.getFloat64(t,!1)}}),mr=Se("OcaFloat64Actuator",5,"\v",2,er,[["GetSetting",5,1,[],[pr,pr,pr]],["SetSetting",5,2,[pr],[]]],[["Setting",[pr],5,1,!1,!1,null]],[]),yr=Se("OcaStringActuator",5,"\f",2,er,[["GetSetting",5,1,[],[z]],["SetSetting",5,2,[z],[]],["GetMaxLen",5,3,[],[c]]],[["Setting",[z],5,1,!1,!1,null],["MaxLen",[c],5,2,!0,!1,null]],[]);function Or(e){return e+7>>3}function br(e,t,n){const r=new Array(n),o=Or(n),s=new Uint8Array(e.buffer,e.byteOffset+t,o);for(let e=0;e<n;e++)r[e]=!!(s[e>>3]&128>>(7&e));return r}const Cr=a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e))throw new TypeError("Expected Array.");const t=e.length;if(t>65535)throw new Error("Array too long for OcaBlob OCP.1 encoding.");return 2+(t+7>>3)},encodeTo:function(e,t,n){const r=n.length;return e.setUint16(t,r),function(e,t,n){const r=n.length,o=Or(r),s=new Uint8Array(e.buffer,e.byteOffset+t,o);for(let e=0,t=0;t<o;t++){let o=0;for(let t=0;t<8&&e<r;t++,e++)n[e]&&(o|=128>>t);s[t]=o}return t+o}(e,t+=2,n)},decodeFrom:function(e,t){const n=e.getUint16(t);return[(t+=2)+Or(n),br(e,t,n)]},decodeLength:function(e,t){return t+2+Or(e.getUint16(t))}}),wr=Se("OcaBitstringActuator",5,"\r",2,er,[["GetNrBits",5,1,[],[c]],["GetBit",5,2,[c],[k]],["SetBit",5,3,[c,k],[]],["GetBitstring",5,4,[],[Cr]],["SetBitstring",5,5,[Cr],[]]],[["Bitstring",[Cr],5,1,!1,!1,null]],[]);class Pr extends(G({Unknown:0,Valid:1,Underrange:2,Overrange:3,Error:4})){}const _r=$(Pr),Gr=Se("OcaSensor",3,"",2,$t,[["GetReadingState",3,1,[],[_r]]],[["ReadingState",[_r],3,1,!1,!1,null]],[]),vr=Se("OcaLevelSensor",4,"",2,Gr,[["GetReading",4,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],4,1,!1,!1,null]],[]);class Tr extends(G({VU:1,StandardVU:2,PPM1:3,PPM2:4,LKFS:5,RMS:6,Peak:7,ProprietaryValueBase:128})){}const Dr=$(Tr),Ir=Se("OcaAudioLevelSensor",5,"",2,vr,[["GetLaw",5,1,[],[Dr]],["SetLaw",5,2,[Dr],[]]],[["Law",[Dr],5,1,!1,!1,null]],[]),Mr=Se("OcaTimeIntervalSensor",4,"",2,Gr,[["GetReading",4,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],4,1,!1,!1,null]],[]),Lr=Se("OcaFrequencySensor",4,"",2,Gr,[["GetReading",4,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],4,1,!1,!1,null]],[]),Ar=Se("OcaTemperatureSensor",4,"",2,Gr,[["GetReading",4,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],4,1,!1,!1,null]],[]),Er=Se("OcaIdentificationSensor",4,"",2,Gr,[],[],[["Identify",4,1,[]]]),kr=Se("OcaVoltageSensor",4,"",1,Gr,[["GetReading",4,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],4,1,!1,!1,null]],[]),xr=Se("OcaCurrentSensor",4,"\b",1,Gr,[["GetReading",4,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],4,1,!1,!1,null]],[]);class Ur{constructor(e,t){this.Magnitude=e,this.Phase=t}}const Nr=l({Magnitude:Zt,Phase:Zt},Ur),Rr=Se("OcaImpedanceSensor",4,"\t",1,Gr,[["GetReading",4,1,[],[Nr,Nr,Nr]]],[["Reading",[Nr],4,1,!1,!1,null]],[]),Fr=Se("OcaGainSensor",4,"\n",1,Gr,[["GetReading",4,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],4,1,!1,!1,null]],[]),Br=Se("OcaBasicSensor",4,"",2,Gr,[],[],[]),jr=Se("OcaBooleanSensor",5,"",2,Br,[["GetReading",5,1,[],[k]]],[["Reading",[k],5,1,!1,!1,null]],[]),Vr=Se("OcaInt8Sensor",5,"",2,Br,[["GetReading",5,1,[],[nr,nr,nr]]],[["Reading",[nr],5,1,!1,!1,null]],[]),zr=Se("OcaInt16Sensor",5,"",2,Br,[["GetReading",5,1,[],[or,or,or]]],[["Reading",[or],5,1,!1,!1,null]],[]),qr=Se("OcaInt32Sensor",5,"",2,Br,[["GetReading",5,1,[],[ir,ir,ir]]],[["Reading",[ir],5,1,!1,!1,null]],[]),Hr=Se("OcaInt64Sensor",5,"",2,Br,[["GetReading",5,1,[],[lr,lr,lr]]],[["Reading",[lr],5,1,!1,!1,null]],[]),Wr=Se("OcaUint8Sensor",5,"",2,Br,[["GetReading",5,1,[],[J,J,J]]],[["Reading",[J],5,1,!1,!1,null]],[]),Kr=Se("OcaUint16Sensor",5,"",2,Br,[["GetReading",5,1,[],[c,c,c]]],[["Reading",[c],5,1,!1,!1,null]],[]),Xr=Se("OcaUint32Sensor",5,"\b",2,Br,[["GetReading",5,1,[],[d,d,d]]],[["Reading",[d],5,1,!1,!1,null]],[]),Yr=Se("OcaFloat32Sensor",5,"\n",2,Br,[["GetReading",5,1,[],[Zt,Zt,Zt]]],[["Reading",[Zt],5,1,!1,!1,null]],[]),Qr=Se("OcaFloat64Sensor",5,"\v",2,Br,[["GetReading",5,1,[],[pr,pr,pr]]],[["Reading",[pr],5,1,!1,!1,null]],[]),Jr=Se("OcaStringSensor",5,"\f",2,Br,[["GetString",5,1,[],[z]],["GetMaxLen",5,2,[],[c]],["SetMaxLen",5,3,[c],[]]],[["String",[z],5,1,!1,!1,null],["MaxLen",[c],5,2,!1,!1,null]],[]),Zr=Se("OcaBitstringSensor",5,"\r",2,Br,[["GetNrBits",5,1,[],[c]],["GetBit",5,2,[c],[J]],["GetBitString",5,3,[],[Cr]]],[["BitString",[Cr],5,1,!1,!1,null]],[]),$r=Se("OcaUint64Sensor",5,"\t",2,Br,[["GetReading",5,1,[],[lt,lt,lt]]],[["Reading",[lt],5,1,!1,!1,null]],[]);class eo{constructor(e,t){this.POno=e,this.ClassIdentification=t}}const to=l({POno:d,ClassIdentification:me},eo);class no{constructor(e,t){this.Mode=e,this.Index=t}}const ro=l({Mode:zt,Index:c},no);class oo{constructor(e,t,n){this.Owner=e,this.ProtoID=t,this.Name=n}}const so=l({Owner:d,ProtoID:ro,Name:z},oo);class io{constructor(e,t){this.SourceProtoPort=e,this.SinkProtoPort=t}}const ao=l({SourceProtoPort:so,SinkProtoPort:so},io),co=Se("OcaBlockFactory",3,"",2,$t,[["DefineProtoPort",3,1,[z,zt],[ro]],["UndefineProtoPort",3,2,[ro],[]],["GetProtoPorts",3,3,[],[R(so)]],["DefineProtoMemberUsingFactory",3,5,[d],[d]],["UndefineProtoMember",3,6,[d],[]],["GetProtoMembers",3,7,[],[R(to)]],["DefineProtoSignalPath",3,8,[ao],[c]],["UndefineProtoSignalPath",3,9,[],[c]],["GetProtoSignalPaths",3,10,[],[gt(c,ao)]],["GetGlobalType",3,11,[],[Ut]],["SetGlobalType",3,12,[Ut],[]]],[["ProtoPorts",[R(so)],3,1,!1,!1,null],["ProtoMembers",[R(to)],3,2,!1,!1,null],["ProtoSignalPaths",[gt(c,ao)],3,3,!1,!1,null],["GlobalType",[Ut],3,4,!1,!1,null]],[]);function lo(e){return e.isConstantLength?function(e){const t=e.encodedLength(void 0),n=e.encodeTo,r=e.decode;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!N(e))throw new TypeError("Expected array.");const n=e.length;if(0===n)return 4;if(!Array.isArray(e[0])&&!N(e[0]))throw new TypeError("Expected array.");const r=e[0].length;if(n>65535||r>65535)throw new Error("Array too long for OcaList2D OCP.1 encoding");return 4+n*r*t},encodeTo:function(e,t,r){const o=r.length,s=0===o?0:r[0].length;e.setUint16(t,o),t+=2,e.setUint16(t,s),t+=2;for(let i=0;i<o;i++){const o=r[i];for(let r=0;r<s;r++)t=n(e,t,o[r])}return t},decodeFrom:function(e,n){const o=e.getUint16(n);n+=2;const s=e.getUint16(n);n+=2;const i=new Array(o).fill().map(()=>new Array(s));for(let a=0;a<o;a++){const o=i[a];for(let i=0;i<s;i++)o[i]=r(e,n),n+=t}return[n,i]},decodeLength:function(e,n){const r=e.getUint16(n);n+=2;const o=e.getUint16(n);return(n+=2)+r*o*t}})}(e):function(e){const t=e.encodedLength,n=e.encodeTo,r=e.decodeFrom,o=e.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!Array.isArray(e)&&!N(e))throw new TypeError("Expected array.");const n=e.length;if(0===n)return 4;if(!Array.isArray(e[0])&&!N(e[0]))throw new TypeError("Expected array.");const r=e[0].length;if(n>65535||r>65535)throw new Error("Array too long for OcaList2D OCP.1 encoding");let o=4;for(let s=0;s<n;s++){const n=e[s];for(let e=0;e<r;e++)o+=t(n[e])}return o},encodeTo:function(e,t,r){const o=r.length,s=0===o?0:r[0].length;e.setUint16(t,o),t+=2,e.setUint16(t,s),t+=2;for(let i=0;i<o;i++){const o=r[i];for(let r=0;r<s;r++)t=n(e,t,o[r])}return t},decodeFrom:function(e,t){const n=e.getUint16(t);t+=2;const o=e.getUint16(t);t+=2;const s=new Array(n).fill().map(()=>new Array(o));for(let i=0;i<n;i++){const n=s[i];for(let s=0;s<o;s++){let o;[t,o]=r(e,t),n[s]=o}}return[t,s]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;const r=e.getUint16(t);t+=2;for(let s=0;s<n;s++)for(let n=0;n<r;n++)t=o(e,t);return t}})}(e)}const uo=Se("OcaMatrix",3,"",2,$t,[["GetCurrentXY",3,1,[],[c,c]],["SetCurrentXY",3,2,[c,c],[]],["GetSize",3,3,[],[c,c,c,c,c,c]],["SetSize",3,4,[c,c],[]],["GetMembers",3,5,[],[lo(d)]],["SetMembers",3,6,[lo(d)],[]],["GetMember",3,7,[c,c],[d]],["SetMember",3,8,[c,c,d],[]],["GetProxy",3,9,[],[d]],["SetProxy",3,10,[d],[]],["GetPortsPerRow",3,11,[],[J]],["SetPortsPerRow",3,12,[J],[]],["GetPortsPerColumn",3,13,[],[J]],["SetPortsPerColumn",3,14,[J],[]],["SetCurrentXYLock",3,15,[c,c],[]],["UnlockCurrent",3,16,[],[]]],[["X",[c],3,1,!1,!1,null],["Y",[c],3,2,!1,!1,null],["xSize",[c],3,3,!1,!1,null],["ySize",[c],3,4,!1,!1,null],["Members",[lo(d)],3,5,!1,!1,null],["Proxy",[d],3,6,!1,!1,null],["PortsPerRow",[J],3,7,!1,!1,null],["PortsPerColumn",[J],3,8,!1,!1,null]],[]),ho=Se("OcaAgent",2,"",2,we,[["GetLabel",2,1,[],[z]],["SetLabel",2,2,[z],[]],["GetOwner",2,3,[],[d]],["GetPath",2,4,[],[R(z),R(d)]]],[["Label",[z],2,1,!1,!1,null],["Owner",[d],2,2,!1,!1,null]],[]);class go{constructor(e,t){this.HostID=e,this.ONo=t}}const fo=l({HostID:A,ONo:d},go);class So{constructor(e,t,n){this.Index=e,this.ObjectPath=t,this.Online=n}}const po=l({Index:c,ObjectPath:fo,Online:k},So);class mo{constructor(e,t){this.GroupIndex=e,this.CitizenIndex=t}}const yo=l({GroupIndex:c,CitizenIndex:c},mo);class Oo{constructor(e,t,n){this.Index=e,this.Name=t,this.ProxyONo=n}}const bo=l({Index:c,Name:z,ProxyONo:d},Oo);class Co extends(G({MasterSlave:1,PeerToPeer:2})){}const wo=$(Co);class Po extends(G({citizenAdded:1,citizenDeleted:2,citizenConnectionLost:3,citizenConnectionReEstablished:4,citizenError:5,enrollment:6,unEnrollment:7})){}const _o=$(Po);class Go{constructor(e,t,n){this.groupIndex=e,this.citizenIndex=t,this.changeType=n}}const vo=l({groupIndex:c,citizenIndex:c,changeType:_o},Go),To=Se("OcaGrouper",3,"",2,ho,[["AddGroup",3,1,[z],[c,d]],["DeleteGroup",3,2,[c],[]],["GetGroupCount",3,3,[],[c]],["GetGroupList",3,4,[],[R(bo)]],["AddCitizen",3,5,[po],[c]],["DeleteCitizen",3,6,[c],[]],["GetCitizenCount",3,7,[],[c]],["GetCitizenList",3,8,[],[R(po)]],["GetEnrollment",3,9,[yo],[k]],["SetEnrollment",3,10,[yo,k],[]],["GetGroupMemberList",3,11,[c],[R(po)]],["GetActuatorOrSensor",3,12,[],[k]],["SetActuatorOrSensor",3,13,[k],[]],["GetMode",3,14,[],[wo]],["SetMode",3,15,[wo],[]]],[["ActuatorOrSensor",[k],3,1,!1,!1,null],["Groups",[R(bo)],3,2,!1,!1,["GroupList"]],["Citizens",[R(po)],3,3,!1,!1,["CitizenList"]],["Enrollments",[R(yo)],3,4,!1,!1,["EnrollmentList"]],["Mode",[wo],3,5,!1,!1,null]],[["StatusChange",3,1,[vo]]]);class Do extends(G({None:0,OcaBoolean:1,OcaInt8:2,OcaInt16:3,OcaInt32:4,OcaInt64:5,OcaUint8:6,OcaUint16:7,OcaUint32:8,OcaUint64:9,OcaFloat32:10,OcaFloat64:11,OcaString:12,OcaBitstring:13,OcaBlob:14,OcaBlobFixedLen:15,OcaBit:16})){}const Io=$(Do);class Mo{constructor(e,t,n,r){this.PropertyID=e,this.BaseDataType=t,this.GetterMethodID=n,this.SetterMethodID=r}}const Lo=l({PropertyID:ye,BaseDataType:Io,GetterMethodID:Ae,SetterMethodID:Ae},Mo);class Ao{constructor(e,t){this.ONo=e,this.Descriptor=t}}const Eo=l({ONo:d,Descriptor:Lo},Ao);class ko extends(G({Enable:1,Start:2,Halt:3})){}const xo=$(ko);class Uo extends(G({Linear:1,ReverseLinear:2,Sine:3,Exponential:4})){}const No=$(Uo);class Ro extends(G({NotInitialized:1,Iniitialized:2,Scheduled:3,Enabled:4,Ramping:5})){}const Fo=$(Ro),Bo=Se("OcaRamper",3,"",2,ho,[["Control",3,1,[xo],[]],["GetState",3,2,[],[Fo]],["GetRampedProperty",3,3,[],[Eo]],["SetRampedProperty",3,4,[Eo],[]],["GetTimeMode",3,5,[],[St]],["SetTimeMode",3,6,[St],[]],["GetStartTime",3,7,[],[lt]],["SetStartTime",3,8,[lt],[]],["GetDuration",3,9,[],[Zt,Zt,Zt]],["SetDuration",3,10,[Zt],[]],["GetInterpolationLaw",3,11,[],[No]],["SetInterpolationLaw",3,12,[No],[]],["GetGoal",3,13,[],[pr]],["SetGoal",3,14,[pr],[]]],[["State",[Fo],3,1,!1,!1,null],["RampedProperty",[Eo],3,2,!1,!1,null],["TimeMode",[St],3,3,!1,!1,null],["StartTime",[lt],3,4,!1,!1,null],["Duration",[Zt],3,5,!1,!1,null],["InterpolationLaw",[No],3,6,!1,!1,null],["Goal",[pr],3,7,!1,!1,null]],[]);class jo{constructor(e){this.Reading=e}}const Vo=l({Reading:pr},jo);class zo extends(G({NotTriggered:0,Triggered:1})){}const qo=$(zo);class Ho extends(G({None:0,Equality:1,Inequality:2,GreaterThan:3,GreaterThanOrEqual:4,LessThan:5,LessThanOrEqual:6})){}const Wo=$(Ho),Ko=Se("OcaNumericObserver",3,"",2,ho,[["GetLastObservation",3,1,[],[pr]],["GetState",3,2,[],[qo]],["GetObservedProperty",3,3,[],[Eo]],["SetObservedProperty",3,4,[Eo],[]],["GetThreshold",3,5,[],[pr]],["SetThreshold",3,6,[pr],[]],["GetOperator",3,7,[],[Wo]],["SetOperator",3,8,[Wo],[]],["GetTwoWay",3,9,[],[k]],["SetTwoWay",3,10,[k],[]],["GetHysteresis",3,11,[],[pr]],["SetHysteresis",3,12,[pr],[]],["GetPeriod",3,13,[],[Zt]],["SetPeriod",3,14,[Zt],[]]],[["State",[qo],3,1,!1,!1,null],["ObservedProperty",[Eo],3,2,!1,!1,null],["Threshold",[pr],3,3,!1,!1,null],["Operator",[Wo],3,4,!1,!1,null],["TwoWay",[k],3,5,!1,!1,null],["Hysteresis",[pr],3,6,!1,!1,null],["Period",[Zt],3,7,!1,!1,null]],[["Observation",3,1,[Vo]]]);class Xo extends(G({None:0,ReadOnly:1,ReadExpand:2,Full:3})){}const Yo=$(Xo);class Qo{constructor(e,t,n,r,o,s){this.Name=e,this.VolType=t,this.Access=n,this.Version=r,this.Creator=o,this.UpDate=s}}const Jo=l({Name:z,VolType:Ze,Access:Yo,Version:d,Creator:z,UpDate:ht},Qo);class Zo{constructor(e,t){this.Metadata=e,this.Data=t}}const $o=l({Metadata:Jo,Data:A},Zo);class es{constructor(e,t){this.VolumeID=e,this.ChangeType=t}}const ts=l({VolumeID:d,ChangeType:Oe},es),ns=Se("OcaLibrary",3,"",2,ho,[["AddVolume",3,1,[$o],[d]],["ReplaceVolume",3,2,[d,$o],[]],["DeleteVolume",3,3,[d],[]],["GetVolume",3,4,[d],[$o]],["GetVolumeCount",3,5,[],[c]],["GetVolumes",3,6,[],[gt(d,$o)]],["GetAccess",3,7,[],[Yo]],["SetAccess",3,8,[Yo],[]]],[["VolumeType",[Ze],3,1,!1,!1,null],["Access",[Yo],3,2,!1,!1,null],["Volumes",[gt(d,$o)],3,3,!1,!1,null]],[["OcaLibVolChanged",3,1,[ts]]]);class rs extends(G({Unspecified:1,Internal:2,External:3})){}const os=$(rs);class ss extends(G({Off:0,Unavailable:1,Available:2,Active:3})){}const is=$(ss);class as extends(G({None:0,Mains:1,Battery:2,Phantom:3,Solar:4})){}const cs=$(as),ls=Se("OcaPowerSupply",3,"",3,ho,[["GetType",3,1,[],[cs]],["GetModelInfo",3,2,[],[z]],["GetState",3,3,[],[is]],["SetState",3,4,[is],[]],["GetCharging",3,5,[],[k]],["GetLoadFractionAvailable",3,6,[],[Zt]],["GetStorageFractionAvailable",3,7,[],[Zt]],["GetLocation",3,8,[],[os]]],[["Type",[cs],3,1,!1,!1,null],["ModelInfo",[z],3,2,!1,!1,null],["State",[is],3,3,!1,!1,null],["Charging",[k],3,4,!1,!1,null],["LoadFractionAvailable",[Zt],3,5,!1,!1,null],["StorageFractionAvailable",[Zt],3,6,!1,!1,null],["Location",[os],3,7,!0,!1,null]],[]),us=Se("OcaEventHandler",3,"\b",2,ho,[["OnEvent",3,1,[A,f],[]]],[],[]);class hs{constructor(e){this.Reading=e}}const ds=l({Reading:R(pr)},hs),gs=Se("OcaNumericObserverList",3,"\t",2,ho,[["GetLastObservation",3,1,[],[R(pr)]],["GetState",3,2,[],[qo]],["GetObservedProperties",3,3,[],[R(Eo)]],["SetObservedProperties",3,4,[R(Eo)],[]],["GetThreshold",3,5,[],[pr]],["SetThreshold",3,6,[pr],[]],["GetOperator",3,7,[],[Wo]],["SetOperator",3,8,[Wo],[]],["GetTwoWay",3,9,[],[k]],["SetTwoWay",3,10,[k],[]],["GetHysteresis",3,11,[],[pr]],["SetHysteresis",3,12,[pr],[]],["GetPeriod",3,13,[],[Zt]],["SetPeriod",3,14,[Zt],[]]],[["State",[qo],3,1,!1,!1,null],["ObservedProperties",[R(Eo)],3,2,!1,!1,null],["Threshold",[pr],3,3,!1,!1,null],["Operator",[Wo],3,4,!1,!1,null],["TwoWay",[k],3,5,!1,!1,null],["Hysteresis",[pr],3,6,!1,!1,null],["Period",[Zt],3,7,!1,!1,null]],[["Observation",3,1,[ds]]]);class fs extends(G({Unavailable:0,Available:1})){}const Ss=$(fs);class ps{constructor(e,t,n,r){this.NominalRate=e,this.PullRange=t,this.Accuracy=n,this.JitterMax=r}}const ms=l({NominalRate:Zt,PullRange:Zt,Accuracy:Zt,JitterMax:Zt},ps),ys=Se("OcaMediaClock3",3,"",1,ho,[["GetAvailability",3,1,[],[Ss]],["SetAvailability",3,2,[Ss],[]],["GetCurrentRate",3,3,[],[ms,d]],["SetCurrentRate",3,4,[ms,d],[]],["GetOffset",3,5,[],[ht]],["SetOffset",3,6,[ht],[]],["GetSupportedRates",3,7,[],[gt(d,R(ms))]]],[["Availability",[Ss],3,1,!1,!1,null],["TimeSourceONo",[d],3,2,!1,!1,null],["Offset",[ht],3,3,!1,!1,null],["CurrentRate",[ms],3,4,!1,!1,null],["SupportedRates",[gt(d,R(ms))],3,5,!1,!1,null]],[]);class Os extends(G({Undefined:0,None:1,Private:2,NTP:3,SNTP:4,IEEE1588_2002:5,IEEE1588_2008:6,IEEE_AVB:7,AES11:8,Genlock:9})){}const bs=$(Os);class Cs extends(G({Undefined:0,Local:1,Private:2,GPS:3,Galileo:4,GLONASS:5})){}const ws=$(Cs);class Ps extends(G({Unavailable:0,Available:1})){}const _s=$(Ps);class Gs extends(G({Undefined:0,Unsynchronized:1,Synchronizing:2,Synchronized:3})){}const vs=$(Gs),Ts=Se("OcaTimeSource",3,"",1,ho,[["GetAvailability",3,1,[],[_s]],["GetProtocol",3,2,[],[bs]],["SetProtocol",3,3,[bs],[]],["GetParameters",3,4,[],[z]],["SetParameters",3,5,[z],[]],["GetReferenceType",3,6,[],[ws]],["SetReferenceType",3,7,[ws],[]],["GetReferenceID",3,8,[],[z]],["SetReferenceID",3,9,[z],[]],["GetSyncStatus",3,10,[],[vs]],["Reset",3,11,[],[]]],[["Availability",[_s],3,1,!1,!1,null],["Protocol",[bs],3,2,!1,!1,null],["Parameters",[z],3,3,!1,!1,null],["ReferenceType",[ws],3,4,!1,!1,null],["ReferenceID",[z],3,5,!1,!1,null],["SyncStatus",[vs],3,6,!1,!1,null]],[]);class Ds extends(G({Robotic:1,ItuAudioObjectBasedPolar:2,ItuAudioObjectBasedCartesian:3,ItuAudioSceneBasedPolar:4,ItuAudioSceneBasedCartesian:5,NAV:6,ProprietaryBase:128})){}const Is=$(Ds),Ms=x;class Ls{constructor(e,t,n){this.CoordinateSystem=e,this.FieldFlags=t,this.Values=n}}const As=l({CoordinateSystem:Is,FieldFlags:Ms,Values:Zt},Ls),Es=Se("OcaPhysicalPosition",3,"",1,ho,[["GetCoordinateSystem",3,1,[],[Is]],["GetPositionDescriptorFieldFlags",3,2,[],[Ms]],["GetPositionDescriptor",3,3,[],[As,As,As]],["SetPositionDescriptor",3,4,[As],[]]],[["CoordinateSystem",[Is],3,1,!0,!1,null],["PositionDescriptorFieldFlags",[Ms],3,2,!0,!1,null],["PositionDescriptor",[As],3,3,!1,!1,null]],[]);class ks extends(G({None:0,Prepare:1,Start:2,Pause:3,Stop:4,Reset:5})){}const xs=$(ks);class Us extends(G({Unknown:0,NotReady:1,Readying:2,Ready:3,Running:4,Paused:5,Stopping:6,Stopped:7,Fault:8})){}const Ns=$(Us);class Rs{constructor(e,t){this.SystemInterfaceParameters=e,this.MyNetworkAddress=t}}const Fs=l({SystemInterfaceParameters:A,MyNetworkAddress:A},Rs),Bs=Se("OcaApplicationNetwork",2,"",1,we,[["GetLabel",2,1,[],[z]],["SetLabel",2,2,[z],[]],["GetOwner",2,3,[],[d]],["GetServiceID",2,4,[],[A]],["SetServiceID",2,5,[A],[]],["GetSystemInterfaces",2,6,[],[R(Fs)]],["SetSystemInterfaces",2,7,[R(Fs)],[]],["GetState",2,8,[],[Ns]],["GetErrorCode",2,9,[],[c]],["Control",2,10,[xs],[]],["GetPath",2,11,[],[R(z),R(d)]]],[["Label",[z],2,1,!1,!0,null],["Owner",[d],2,2,!1,!0,null],["ServiceID",[A],2,3,!1,!1,null],["SystemInterfaces",[R(Fs)],2,4,!1,!1,null],["State",[Ns],2,5,!1,!1,null],["ErrorCode",[c],2,6,!1,!1,null]],[]);class js extends(G({None:0,OCP01:1,OCP02:2,OCP03:3})){}const Vs=$(js),zs=Se("OcaControlNetwork",3,"",1,Bs,[["GetControlProtocol",3,1,[],[Vs]]],[["Protocol",[Vs],3,1,!1,!1,["ControlProtocol"]]],[]);class qs{constructor(e,t,n){this.CodingSchemeID=e,this.CodecParameters=t,this.ClockONo=n}}const Hs=l({CodingSchemeID:c,CodecParameters:z,ClockONo:d},qs);class Ws extends(G({None:0,Unicast:1,Multicast:2})){}const Ks=$(Ws);class Xs{constructor(e,t,n,r){this.Secure=e,this.StreamParameters=t,this.StreamCastMode=n,this.StreamChannelCount=r}}const Ys=l({Secure:k,StreamParameters:A,StreamCastMode:Ks,StreamChannelCount:c},Xs);class Qs extends(G({None:0,Start:1,Pause:2})){}const Js=$(Qs);class Zs extends(G({Stopped:0,SettingUp:1,Running:2,Paused:3,Fault:4})){}const $s=$(Zs);class ei{constructor(e,t,n){this.ConnectorID=e,this.State=t,this.ErrorCode=n}}const ti=l({ConnectorID:c,State:$s,ErrorCode:c},ei);class ni{constructor(e){this.ConnectorStatus=e}}const ri=l({ConnectorStatus:ti},ni);function oi(e,t){const n=e.encodedLength,r=e.encodeTo,o=e.decodeFrom,s=e.decodeLength,i=t.encodedLength,c=t.encodeTo,l=t.decodeFrom,u=t.decodeLength;return a({isConstantLength:!1,encodedLength:function(e){if(!(e instanceof Map||e instanceof WeakMap))throw new TypeError("Expected Map or WeakMap");let t=2;return e.forEach((e,r)=>{t+=n(r)*e.size,e.forEach(e=>{t+=i(e)})}),t},encodeTo:function(e,t,n){const o=t;let s=0;return t+=2,n.forEach((n,o)=>{s+=n.size,n.forEach(n=>{t=r(e,t,o),t=c(e,t,n)})}),e.setUint16(o,s),t},decodeFrom:function(e,t){const n=new Map,r=e.getUint16(t);t+=2;for(let s=0;s<r;s++){let r,s;[t,r]=o(e,t),[t,s]=l(e,t);let i=n.get(r);i||n.set(r,i=new Set),i.add(s)}return[t,n]},decodeLength:function(e,t){const n=e.getUint16(t);t+=2;for(let r=0;r<n;r++)t=s(e,t),t=u(e,t);return t}})}class si{constructor(e,t,n,r,o,s,i,a,c){this.IDInternal=e,this.IDExternal=t,this.Connection=n,this.AvailableCodings=r,this.PinCount=o,this.ChannelPinMap=s,this.AlignmentLevel=i,this.AlignmentGain=a,this.CurrentCoding=c}}const ii=l({IDInternal:c,IDExternal:z,Connection:Ys,AvailableCodings:R(Hs),PinCount:c,ChannelPinMap:oi(c,Ht),AlignmentLevel:Zt,AlignmentGain:Zt,CurrentCoding:Hs},si),ai=x;class ci{constructor(e,t,n){this.SinkConnector=e,this.ChangeType=t,this.ChangedElement=n}}const li=l({SinkConnector:ii,ChangeType:Oe,ChangedElement:ai},ci);class ui{constructor(e,t,n,r,o,s,i,a){this.IDInternal=e,this.IDExternal=t,this.Connection=n,this.AvailableCodings=r,this.PinCount=o,this.ChannelPinMap=s,this.AlignmentLevel=i,this.CurrentCoding=a}}const hi=l({IDInternal:c,IDExternal:z,Connection:Ys,AvailableCodings:R(Hs),PinCount:c,ChannelPinMap:gt(c,Ht),AlignmentLevel:Zt,CurrentCoding:Hs},ui);class di{constructor(e,t,n){this.SourceConnector=e,this.ChangeType=t,this.ChangedElement=n}}const gi=l({SourceConnector:hi,ChangeType:Oe,ChangedElement:ai},di);class fi extends(G({None:0,AV3:1,AVBTP:2,Dante:3,Cobranet:4,AES67:5,SMPTEAudio:6,LiveWire:7,ExtensionPoint:65})){}const Si=$(fi),pi=Se("OcaMediaTransportNetwork",3,"",1,Bs,[["GetMediaProtocol",3,1,[],[Si]],["GetPorts",3,2,[],[R(Kt)]],["GetPortName",3,3,[Ht],[z]],["SetPortName",3,4,[Ht,z],[]],["GetMaxSourceConnectors",3,5,[],[c]],["GetMaxSinkConnectors",3,6,[],[c]],["GetMaxPinsPerConnector",3,7,[],[c]],["GetMaxPortsPerPin",3,8,[],[c]],["GetSourceConnectors",3,9,[],[R(hi)]],["GetSourceConnector",3,10,[c],[hi]],["GetSinkConnectors",3,11,[],[R(ii)]],["GetSinkConnector",3,12,[c],[ii]],["GetConnectorsStatuses",3,13,[],[R(ti)]],["GetConnectorStatus",3,14,[c],[ti]],["AddSourceConnector",3,15,[hi,$s],[hi]],["AddSinkConnector",3,16,[ti,ii],[ii]],["ControlConnector",3,17,[c,Js],[]],["SetSourceConnectorPinMap",3,18,[c,gt(c,Ht)],[]],["SetSinkConnectorPinMap",3,19,[c,oi(c,Ht)],[]],["SetConnectorConnection",3,20,[c,Ys],[]],["SetConnectorCoding",3,21,[c,Hs],[]],["SetConnectorAlignmentLevel",3,22,[c,Zt],[]],["SetConnectorAlignmentGain",3,23,[c,Zt],[]],["DeleteConnector",3,24,[c],[]],["GetAlignmentLevel",3,25,[],[Zt,Zt,Zt]],["GetAlignmentGain",3,26,[],[Zt,Zt,Zt]]],[["Protocol",[Si],3,1,!1,!1,["MediaProtocol"]],["Ports",[R(Kt)],3,2,!1,!1,null],["MaxSourceConnectors",[c],3,3,!1,!1,null],["MaxSinkConnectors",[c],3,4,!1,!1,null],["MaxPinsPerConnector",[c],3,5,!1,!1,null],["MaxPortsPerPin",[c],3,6,!1,!1,null],["AlignmentLevel",[Zt],3,7,!1,!1,null],["AlignmentGain",[Zt],3,8,!1,!1,null]],[["SourceConnectorChanged",3,1,[gi]],["SinkConnectorChanged",3,2,[li]],["ConnectorStatusChanged",3,3,[ri]]]);class mi extends(G({None:0,Source:1,Sink:2})){}const yi=$(mi);class Oi extends(G({NotConnected:0,Connected:1,Muted:2})){}const bi=$(Oi),Ci=Se("OcaNetworkSignalChannel",3,"",2,$t,[["AddToConnector",3,6,[d,c],[]],["GetConnectorPins",3,5,[],[gt(d,c)]],["GetIDAdvertised",3,1,[],[A]],["GetNetwork",3,3,[],[d]],["GetRemoteChannelID",3,8,[],[A]],["GetSourceOrSink",3,10,[],[yi]],["GetStatus",3,11,[],[bi]],["RemoveFromConnector",3,7,[d],[]],["SetIDAdvertised",3,2,[A],[]],["SetNetwork",3,4,[d],[]],["SetRemoteChannelID",3,9,[A],[]]],[["ConnectorPins",[gt(d,c)],3,3,!1,!1,null],["IDAdvertised",[A],3,1,!1,!1,null],["Network",[d],3,2,!1,!1,null],["RemoteChannelID",[A],3,4,!1,!1,null],["SourceOrSink",[yi],3,5,!1,!1,null],["Status",[bi],3,6,!1,!1,null]],[]);class wi extends(G({None:0,EthernetWired:1,EthernetWireless:2,USB:3,SerialP2P:4})){}const Pi=$(wi);class _i{constructor(e,t){this.rxPacketErrors=e,this.txPacketErrors=t}}const Gi=l({rxPacketErrors:d,txPacketErrors:d},_i);class vi extends(G({Unknown:0,Ready:1,StartingUp:2,Stopped:3})){}const Ti=$(vi);class Di{constructor(e,t){this.SystemInterfaceHandle=e,this.MyNetworkAddress=t}}const Ii=l({SystemInterfaceHandle:A,MyNetworkAddress:A},Di),Mi=Se("OcaNetwork",3,"",2,ho,[["GetLinkType",3,1,[],[Pi]],["GetIDAdvertised",3,2,[],[A]],["SetIDAdvertised",3,3,[A],[]],["GetControlProtocol",3,4,[],[Vs]],["GetMediaProtocol",3,5,[],[Si]],["GetStatus",3,6,[],[Ti]],["GetStatistics",3,7,[],[Gi]],["ResetStatistics",3,8,[],[]],["GetSystemInterfaces",3,9,[],[R(Ii)]],["SetSystemInterfaces",3,10,[R(Ii)],[]],["GetMediaPorts",3,11,[],[R(d)]],["Startup",3,12,[],[]],["Shutdown",3,13,[],[]]],[["LinkType",[Pi],3,1,!0,!1,null],["IDAdvertised",[A],3,2,!1,!1,null],["ControlProtocol",[Vs],3,3,!1,!1,null],["MediaProtocol",[Si],3,4,!1,!1,null],["Status",[Ti],3,5,!1,!1,null],["SystemInterfaces",[R(Ii)],3,6,!1,!1,null],["MediaPorts",[R(d)],3,7,!1,!1,null],["Statistics",[Gi],3,8,!1,!1,null]],[]);class Li extends(G({Undefined:0,Locked:1,Synchronizing:2,FreeRun:3,Stopped:4})){}const Ai=$(Li),Ei=Se("OcaMediaClock",3,"",2,ho,[["GetType",3,1,[],[Ke]],["SetType",3,2,[Ke],[]],["GetDomainID",3,3,[],[c]],["SetDomainID",3,4,[c],[]],["GetSupportedRates",3,5,[],[R(ms)]],["GetCurrentRate",3,6,[],[ms]],["SetCurrentRate",3,7,[ms],[]],["GetLockState",3,8,[],[Ai]]],[["Type",[Ke],3,1,!1,!1,null],["DomainID",[c],3,2,!1,!1,null],["RatesSupported",[R(ms)],3,3,!1,!1,null],["CurrentRate",[ms],3,4,!1,!1,null],["LockState",[Ai],3,5,!1,!1,null]],[]),ki=Se("OcaStreamNetwork",3,"\n",2,ho,[["GetLinkType",3,1,[],[Pi]],["GetIDAdvertised",3,2,[],[A]],["SetIDAdvertised",3,3,[A],[]],["GetControlProtocol",3,4,[],[Vs]],["GetMediaProtocol",3,5,[],[Si]],["GetStatus",3,6,[],[Ti]],["GetStatistics",3,7,[],[Gi]],["ResetStatistics",3,8,[],[]],["GetSystemInterfaces",3,9,[],[R(Ii)]],["SetSystemInterfaces",3,10,[R(Ii)],[]],["GetStreamConnectorsSource",3,11,[],[R(d)]],["SetStreamConnectorsSource",3,12,[R(d)],[]],["GetStreamConnectorsSink",3,13,[],[R(d)]],["SetStreamConnectorsSink",3,14,[R(d)],[]],["GetSignalChannelsSource",3,15,[],[R(d)]],["SetSignalChannelsSource",3,16,[R(d)],[]],["GetSignalChannelsSink",3,17,[],[R(d)]],["SetSignalChannelsSink",3,18,[R(d)],[]],["Startup",3,19,[],[]],["Shutdown",3,20,[],[]]],[["ControlProtocol",[Vs],3,3,!1,!1,null],["IDAdvertised",[A],3,2,!1,!1,null],["LinkType",[Pi],3,1,!0,!1,null],["MediaProtocol",[Si],3,4,!1,!1,null],["SignalChannelsSink",[R(d)],3,10,!1,!1,null],["SignalChannelsSource",[R(d)],3,9,!1,!1,null],["Statistics",[Gi],3,11,!1,!1,null],["Status",[Ti],3,5,!1,!1,null],["StreamConnectorsSink",[R(d)],3,8,!1,!1,null],["StreamConnectorsSource",[R(d)],3,7,!1,!1,null],["SystemInterfaces",[R(Ii)],3,6,!1,!1,null]],[]);class xi{constructor(e,t,n,r){this.HostID=e,this.NetworkAddress=t,this.NodeID=n,this.StreamConnectorID=r}}const Ui=l({HostID:A,NetworkAddress:A,NodeID:A,StreamConnectorID:A},xi);class Ni extends(G({NotConnected:0,Connected:1,Paused:2})){}const Ri=$(Ni);class Fi extends(G({None:0,Unicast:1,Multicast:2})){}const Bi=$(Fi);class ji{constructor(e,t,n,r,o,s,i,a,c,l,u){this.ErrorNumber=e,this.IDAdvertised=t,this.Index=n,this.Label=r,this.LocalConnectorONo=o,this.Priority=s,this.RemoteConnectorIdentification=i,this.Secure=a,this.Status=c,this.StreamParameters=l,this.StreamType=u}}const Vi=l({ErrorNumber:c,IDAdvertised:A,Index:c,Label:z,LocalConnectorONo:d,Priority:c,RemoteConnectorIdentification:Ui,Secure:k,Status:Ri,StreamParameters:A,StreamType:Bi},ji);class zi extends(G({NotAvailable:0,Idle:1,Connected:2,Paused:3})){}const qi=$(zi),Hi=Se("OcaStreamConnector",3,"\v",2,ho,[["ConnectStream",3,7,[Vi],[c]],["DisconnectStream",3,8,[c],[]],["GetIDAdvertised",3,3,[],[A]],["GetOwnerNetwork",3,1,[],[d]],["GetPins",3,10,[],[gt(c,d)]],["GetSourceOrSink",3,5,[],[yi]],["GetStatus",3,11,[],[qi]],["GetStreams",3,9,[],[gt(c,Vi)]],["SetIDAdvertised",3,4,[A],[]],["SetOwnerNetwork",3,2,[d],[]],["SetSourceOrSink",3,6,[yi],[]]],[["IDAdvertised",[A],3,2,!1,!1,null],["OwnerNetwork",[d],3,1,!1,!1,null],["Pins",[gt(c,d)],3,5,!1,!1,null],["SourceOrSink",[yi],3,3,!1,!1,null],["Status",[qi],3,6,!1,!1,null],["Streams",[gt(c,Vi)],3,4,!1,!1,null]],[]);var Wi=Object.freeze({__proto__:null,OcaRoot:we,OcaWorker:$t,OcaActuator:tn,OcaMute:on,OcaPolarity:cn,OcaSwitch:ln,OcaGain:un,OcaPanBalance:hn,OcaDelay:dn,OcaDelayExtended:mn,OcaFrequencyActuator:yn,OcaFilterClassical:_n,OcaFilterParametric:Tn,OcaFilterPolynomial:Dn,OcaFilterFIR:In,OcaFilterArbitraryCurve:An,OcaDynamics:jn,OcaDynamicsDetector:Vn,OcaDynamicsCurve:zn,OcaSignalGenerator:Xn,OcaSignalInput:Yn,OcaSignalOutput:Qn,OcaTemperatureActuator:Jn,OcaIdentificationActuator:Zn,OcaSummingPoint:$n,OcaBasicActuator:er,OcaBooleanActuator:tr,OcaInt8Actuator:rr,OcaInt16Actuator:sr,OcaInt32Actuator:ar,OcaInt64Actuator:ur,OcaUint8Actuator:hr,OcaUint16Actuator:dr,OcaUint32Actuator:gr,OcaUint64Actuator:fr,OcaFloat32Actuator:Sr,OcaFloat64Actuator:mr,OcaStringActuator:yr,OcaBitstringActuator:wr,OcaSensor:Gr,OcaLevelSensor:vr,OcaAudioLevelSensor:Ir,OcaTimeIntervalSensor:Mr,OcaFrequencySensor:Lr,OcaTemperatureSensor:Ar,OcaIdentificationSensor:Er,OcaVoltageSensor:kr,OcaCurrentSensor:xr,OcaImpedanceSensor:Rr,OcaGainSensor:Fr,OcaBasicSensor:Br,OcaBooleanSensor:jr,OcaInt8Sensor:Vr,OcaInt16Sensor:zr,OcaInt32Sensor:qr,OcaInt64Sensor:Hr,OcaUint8Sensor:Wr,OcaUint16Sensor:Kr,OcaUint32Sensor:Xr,OcaFloat32Sensor:Yr,OcaFloat64Sensor:Qr,OcaStringSensor:Jr,OcaBitstringSensor:Zr,OcaUint64Sensor:$r,OcaBlock:en,OcaBlockFactory:co,OcaMatrix:uo,OcaAgent:ho,OcaGrouper:To,OcaRamper:Bo,OcaNumericObserver:Ko,OcaLibrary:ns,OcaPowerSupply:ls,OcaEventHandler:us,OcaNumericObserverList:gs,OcaMediaClock3:ys,OcaTimeSource:Ts,OcaPhysicalPosition:Es,OcaApplicationNetwork:Bs,OcaControlNetwork:zs,OcaMediaTransportNetwork:pi,OcaManager:Pe,OcaDeviceManager:_e,OcaSecurityManager:Ge,OcaFirmwareManager:Me,OcaSubscriptionManager:je,OcaPowerManager:qe,OcaNetworkManager:He,OcaMediaClockManager:Xe,OcaLibraryManager:tt,OcaAudioProcessingManager:nt,OcaDeviceTimeManager:dt,OcaTaskManager:Dt,OcaCodingManager:It,OcaDiagnosticManager:Mt,OcaNetworkSignalChannel:Ci,OcaNetwork:Mi,OcaMediaClock:Ei,OcaStreamNetwork:ki,OcaStreamConnector:Hi});const Ki={DeviceManager:1,SecurityManager:2,FirmwareManager:3,SubscriptionManager:4,PowerManager:5,NetworkManager:6,MediaClockManager:7,LibraryManager:8,AudioProcessingManager:9,DeviceTimeManager:10,TaskManager:11,CodingManager:12,DiagnosticManager:13};function Xi(e){const t=e.EmitterONo,n=e.EventID;return[t,n.DefLevel,n.EventIndex].join(",")}const Yi={ONo:1055,MethodID:{DefLevel:1,MethodIndex:1}};class Qi extends n{constructor(e,...t){super(),this.objects=new Map,this.connection=e,e.on("error",e=>{this.emit("error",e)}),e.on("close",e=>{this.emit("close",e)}),this.modules=[],this.add_control_classes(Object.values(Wi)),t.map(e=>this.add_control_classes(e)),this.DeviceManager=new _e(Ki.DeviceManager,this),this.SecurityManager=new Ge(Ki.SecurityManager,this),this.FirmwareManager=new Me(Ki.FirmwareManager,this),this.SubscriptionManager=new je(Ki.SubscriptionManager,this),this.PowerManager=new qe(Ki.PowerManager,this),this.NetworkManager=new He(Ki.NetworkManager,this),this.MediaClockManager=new Xe(Ki.MediaClockManager,this),this.LibraryManager=new tt(Ki.LibraryManager,this),this.AudioProcessingManager=new nt(Ki.AudioProcessingManager,this),this.DeviceTimeManager=new dt(Ki.DeviceTimeManager,this),this.TaskManager=new Dt(Ki.TaskManager,this),this.CodingManager=new It(Ki.CodingManager,this),this.DiagnosticManager=new Mt(Ki.DiagnosticManager,this),this.Root=new en(100,this),this.subscriptions=new Map}close(){this.connection.close()}send_command(e,t,n){return this.connection.send_command(e,t,n)}_doSubscribe(e){return this.SubscriptionManager.AddSubscription(e,Yi,new Uint8Array(0),xe.Reliable,new Uint8Array(0))}async add_subscription(n,r){const o=Xi(n),s=this.subscriptions;{const e=s.get(o);if(e)return e.callbacks.add(r),!0}const i=n=>{const r=this.subscriptions.get(o);if(!r)return void e("Subscription lost.");r.callbacks.forEach((function(e){try{e(n)}catch(e){t(e)}}))};this.connection._addSubscriber(n,i);const a={callbacks:new Set([r]),callback:i};s.set(o,a);try{await this._doSubscribe(n)}catch(e){throw s.delete(o),e}}remove_subscription(e,t){const n=Xi(e),r=this.subscriptions.get(n);if(!r)return Promise.reject("Callback not registered.");const o=r.callbacks;return o.delete(t),o.size?Promise.resolve(!0):(this.connection._removeSubscriber(e),this.subscriptions.delete(n),this.SubscriptionManager.RemoveSubscription(e,Yi))}find_best_class(e){for("object"==typeof e&&e.ClassID&&(e=e.ClassID);e.length;){const t=this.find_class_by_id(e);if(t)return t;e=e.substr(0,e.length-1)}return null}add_control_classes(e){if(Array.isArray(e)){const t={};for(let n=0;n<e.length;n++){const r=e[n];t[r.ClassID]=r}e=t}else if("object"!=typeof e)throw new Error("Unsupported module.");this.modules.push(e)}find_class_by_id(e){"object"==typeof e&&e.ClassID&&(e=e.ClassID);const t=this.modules;for(let n=t.length-1;n>=0;n--){const r=t[n][e];if(r)return r}return null}allocate(e,t){"object"==typeof t&&(t=t.valueOf());const n=this.objects;return n.has(t)||n.set(t,new e(t,this)),n.get(t)}resolve_object(e){if("MemberObjectIdentification"in e)return this.resolve_object(e.MemberObjectIdentification);if("ONo"in e&&"ClassIdentification"in e){const t=e.ONo,n=e.ClassIdentification;return this.allocate(this.find_best_class(n),t)}throw new TypeError("Expected OcaObjectIdentification or OcaBlockMember")}GetDeviceTree(){const e=t=>t.GetMembers().then(t=>{const n=[];t=t.map(this.resolve_object,this);for(let r=0;r<t.length;r++)n.push(Promise.resolve(t[r])),t[r].ClassID.startsWith(en.ClassID)&&n.push(e(t[r]));return Promise.all(n)});return e(this.Root)}get_device_tree(){return this.GetDeviceTree()}get_role_map(e){return this.get_device_tree().then((function(t){return function(e,t){const n=new Map;t||(t="/");const r=[],o=e=>{Array.isArray(e)?e.forEach(o):r.push(e.GetRole().then(t=>{n.set(e,t)}))};return e.forEach(o),Promise.all(r).then((function(){const r=new Map,o=(e,s)=>{const i=null!=s?s+t:"",a=new Map;e.forEach((function(e,t){if(Array.isArray(e))return;const r=n.get(e);if(a.has(r)){const t=a.get(r);Array.isArray(t)?t.push(e):a.set(r,[t,e])}else a.set(r,e)})),a.forEach((function(e,t){if(Array.isArray(e)){let n=1;for(let r=0;r<e.length;r++){const o=t+n;for(;a.has(o);)n++;a.set(o,e[r]),a.set(e[r],o)}a.delete(t)}else a.set(e,t)})),e.forEach((t,n)=>{if(Array.isArray(t))o(t,i+a.get(e[n-1]));else{const e=i+a.get(t);r.set(e,t)}})};return o(e,null),r}))}(t,e)}))}discover_all_fallback(){return this.GetDeviceTree().then(e=>{const t=[],n=function(e){for(let r=0;r<e.length;r++)Array.isArray(e[r])?n(e[r]):t.push(e[r])};return n(e),t})}discover_all(){return this.Root.GetMembersRecursive().then(e=>e.map(this.resolve_object,this)).catch(()=>this.discover_all_fallback())}set_keepalive_interval(e){this.connection.set_keepalive_interval(e)}}const Ji=Object.values(Wi);class Zi extends(G({None:0,ParamSet:1,Patch:2,Program:3})){}class $i extends(G({Ampere:4,DegreeCelsius:2,Hertz:1,None:0,Ohm:5,Volt:3})){}var ea=Object.freeze({__proto__:null,OcaApplicationNetworkCommand:ks,OcaApplicationNetworkState:Us,OcaBaseDataType:Do,OcaBlockMember:Et,OcaClassAuthorityID:class{constructor(e,t,n){this.Sentinel=e,this.Reserved=t,this.OrganizationID=n}},OcaClassIdentification:pe,OcaClassicalFilterShape:On,OcaComponent:ve,OcaDBr:En,OcaDelayUnit:gn,OcaDelayValue:Sn,OcaDeviceState:{Operational:1,Disabled:2,Error:4,Initializing:8,Updating:16,unused:32},OcaDynamicsFunction:xn,OcaEnumItem:class{constructor(e){this.Value=e}},OcaEnumItem16:class{constructor(e){this.Value=e}},OcaEvent:g,OcaEventID:u,OcaFilterPassband:Cn,OcaGlobalTypeIdentifier:xt,OcaGrouperCitizen:So,OcaGrouperEnrollment:mo,OcaGrouperGroup:Oo,OcaGrouperMode:Co,OcaGrouperStatusChangeEventData:Go,OcaGrouperStatusChangeType:Po,OcaImpedance:Ur,OcaLevelDetectionLaw:Nn,OcaLevelMeterLaw:Tr,OcaLibAccess:Xo,OcaLibParamSetAssignment:class{constructor(e,t){this.ParamSetIdentifier=e,this.TargetBlockONo=t}},OcaLibVol:Zo,OcaLibVolChangedEventData:es,OcaLibVolData_ParamSet:Nt,OcaLibVolIdentifier:Ye,OcaLibVolMetadata:Qo,OcaLibVolStandardTypeID:Zi,OcaLibVolType:Je,OcaLibraryIdentifier:$e,OcaManagerDefaultObjectNumbers:Ki,OcaManagerDescriptor:H,OcaMediaClockAvailability:fs,OcaMediaClockLockState:Li,OcaMediaClockRate:ps,OcaMediaClockType:We,OcaMediaCoding:qs,OcaMediaConnection:Xs,OcaMediaConnectorCommand:Qs,OcaMediaConnectorElement:{PinMap:1,Connection:2,Coding:4,AlignmentLevel:8,AlignmentGain:16},OcaMediaConnectorState:Zs,OcaMediaConnectorStatus:ei,OcaMediaConnectorStatusChangedEventData:ni,OcaMediaSinkConnector:si,OcaMediaSinkConnectorChangedEventData:ci,OcaMediaSourceConnector:ui,OcaMediaSourceConnectorChangedEventData:di,OcaMediaStreamCastMode:Ws,OcaMethod:Ee,OcaMethodID:Le,OcaModelDescription:K,OcaModelGUID:Y,OcaMuteState:nn,OcaNetworkControlProtocol:js,OcaNetworkLinkType:wi,OcaNetworkMediaProtocol:fi,OcaNetworkMediaSourceOrSink:mi,OcaNetworkSignalChannelStatus:Oi,OcaNetworkStatistics:_i,OcaNetworkStatus:vi,OcaNetworkSystemInterfaceDescriptor:Rs,OcaNetworkSystemInterfaceID:Di,OcaNotificationDeliveryMode:xe,OcaOPath:go,OcaObjectIdentification:Lt,OcaObjectListEventData:Ne,OcaObjectSearchResult:Ft,OcaObjectSearchResultFlags:{ONo:1,ClassIdentification:2,ContainerPath:4,Role:8,Label:16,unused:32},OcaObservationEventData:jo,OcaObservationListEventData:hs,OcaObserverState:zo,OcaParametricEQShape:Gn,OcaPilotToneDetectorSpec:class{constructor(e,t,n){this.Threshold=e,this.Frequency=t,this.PollInterval=n}},OcaPolarityState:sn,OcaPort:Wt,OcaPortID:qt,OcaPortMode:Vt,OcaPositionCoordinateSystem:Ds,OcaPositionDescriptor:Ls,OcaPowerState:Ve,OcaPowerSupplyLocation:rs,OcaPowerSupplyState:ss,OcaPowerSupplyType:as,OcaPresentationUnit:Fn,OcaProperty:Ao,OcaPropertyChangeType:ie,OcaPropertyDescriptor:Mo,OcaPropertyID:ce,OcaProtoObjectIdentification:eo,OcaProtoPort:oo,OcaProtoPortID:no,OcaProtoSignalPath:io,OcaRamperCommand:ko,OcaRamperInterpolationLaw:Uo,OcaRamperState:Ro,OcaRelationalOperator:Ho,OcaResetCause:ee,OcaSensorReadingState:Pr,OcaSignalPath:Xt,OcaStatus:v,OcaStream:ji,OcaStreamConnectorIdentification:xi,OcaStreamConnectorStatus:zi,OcaStreamStatus:Ni,OcaStreamType:Fi,OcaStringComparisonType:Qt,OcaSubscriptionManagerState:Fe,OcaSweepType:qn,OcaTask:pt,OcaTaskCommand:yt,OcaTaskManagerState:bt,OcaTaskState:wt,OcaTaskStateChangedEventData:vt,OcaTaskStatus:_t,OcaTimeMode:ft,OcaTimePTP:ut,OcaTimeProtocol:Os,OcaTimeReferenceType:Cs,OcaTimeSourceAvailability:Ps,OcaTimeSourceSyncStatus:Gs,OcaTransferFunction:Mn,OcaUnitOfMeasure:$i,OcaVersion:De,OcaWaveformType:Wn});class ta extends L{constructor(e,t){super(t),this.ws=e,e.binaryType="arraybuffer",e.addEventListener("message",e=>{this.read(e.data)}),e.addEventListener("close",()=>{this.emit("close")}),e.addEventListener("error",()=>{this.emit("error")})}write(e){this.ws.send(e),super.write(e)}static connect(e){return new Promise((t,n)=>{const r=new WebSocket(e.url),o=function(e){n(e)};r.addEventListener("open",()=>{r.removeEventListener("error",o),t(new this(r,e))}),r.addEventListener("error",o)})}cleanup(){if(super.cleanup(),this.ws){try{this.ws.close()}catch(e){}this.ws=null}}_now(){return performance.now()}}function na(e){return new Promise(t=>setTimeout(t,e))}const ra={Connection:L,WebSocket:ta,Device:Qi,ControlClasses:Wi,define_custom_class:function(e,t,n,r,o,s,i,a){if(n=String.fromCharCode.apply(String,n.split(".").map(e=>parseInt(e))),o){if("string"==typeof o)for(let e=0;e<Ji.length;e++)if(Ji[e].ClassName===o){o=Ji[e];break}}else{const e=n.substr(0,n.length-1);for(let t=0;t<Ji.length;t++)if(Ji[t].ClassID===e){o=Ji[t];break}}if("function"!=typeof o)throw new Error("Unknown parent class.");return Se(e,t,n,r,o,s,i,a)}};var oa=Object.freeze({__proto__:null,Connection:P,controller:ra,ClientConnection:L,Command:s,CommandRrq:i,decodeMessage:O,encodeMessage:C,error:t,log:function(...e){try{console.log(...e)}catch(e){}},KeepAlive:m,Notification:S,Response:p,RemoteDevice:Qi,Types:ea,warn:e,WebSocketConnection:ta,RemoteControlClasses:Wi,AbstractUDPConnection:class extends L{constructor(e,t){t.batch>=0||(t.batch=128),super(t),this.socket=e,this.delay=t.delay>=0?t.delay:5,this.retry_interval=t.retry_interval>=0?t.retry_interval:250,this.retry_count=t.retry_count>=0?t.retry_count:3,this._write_out_id=-1,this._write_out_callback=()=>{this._write_out_id=-1,this._write_out()},this._retry_id=this.retry_interval>0?setInterval(()=>this._retryCommands(),this.retry_interval):-1,this.q=[],e.onmessage=e=>{try{this.read(e)}catch(e){console.warn("Failed to parse incoming AES70 packet: %o",e)}null!==this.inbuf&&this.close()},e.onerror=e=>this.error(e),this.set_keepalive_interval(1)}get is_reliable(){return!1}static async connect(e,t){const n=await e.connect(t.host,t.port,t.type);return await async function(e,t){const n=e.receiveMessage().then(e=>{const t=[];let n=0;if(n=O(new DataView(e),0,t),1!==t.length)throw new Error("Expected keepalive response.");return!0}),r=C(new m(1e3)),o=5*(t.retry_interval||250);for(let t=0;t<3;t++)if(e.send(r),await Promise.race([n,na(o)]))return;throw new Error("Failed to connect.")}(n,t),new this(n,t)}write(e){this.q.push(e),this.tx_idle_time()>=this.delay?this._write_out():this._schedule_write_out()}flush(){super.flush(),this.tx_idle_time()>this.delay&&this._write_out()}cleanup(){super.cleanup(),this.socket&&(this.socket.close(),this.socket=null),-1!==this._write_out_id&&(clearTimeout(this._write_out_id),this._write_out_id=-1),-1!==this._retry_id&&(clearInterval(this._retry_id),this._retry_id=-1)}_estimate_next_tx_time(){return this._now()+(this.delay+2)*this.q.length}_write_out(){if(!this.socket)return;const e=this.q;if(!e.length)return;const t=e.shift();this.socket.send(t),super.write(t),e.length&&this._schedule_write_out()}_schedule_write_out(){const e=this.tx_idle_time(),t=this.delay;e>=t?this._write_out():-1===this._write_out_id&&(this._write_out_id=setTimeout(this._write_out_callback,t-e))}_retryCommands(){const e=this._now(),t=e-this.retry_interval,n=this.retry_interval/this.delay*5-this.q.length,r=this._pendingCommands,o=[],s=[];for(const e of r){const[,r]=e;if(r.lastSent>t)break;r.retries>=this.retry_count?s.push(e):o.length<n&&o.push(e)}if(s.length){const e=new Error("Timeout.");s.forEach(([t,n])=>{r.delete(t),n.reject(e)})}o.forEach(([t,n])=>{r.delete(t),r.set(t,n),this.send(n.command),n.lastSent=e,n.retries++})}}});window.OCA=oa}();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "aes70",
3
- "version": "1.3.8",
3
+ "version": "1.4.0",
4
4
  "description": "A controller library for the AES70 protocol.",
5
5
  "type": "module",
6
6
  "main": "src/index.js",
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * This file has been generated.
3
3
  */
4
- import { Struct } from './Struct.js';
5
4
  import { OcaObjectIdentification } from './OcaObjectIdentification.js';
6
5
  import { OcaUint32 } from './OcaUint32.js';
6
+ import { Struct } from './Struct.js';
7
7
 
8
8
  import { OcaBlockMember as type } from '../types/OcaBlockMember.js';
9
9
 
@@ -1,10 +1,10 @@
1
1
  /*
2
2
  * This file has been generated.
3
3
  */
4
- import { Struct } from './Struct.js';
5
4
  import { OcaBlobFixedLen } from './OcaBlobFixedLen.js';
6
5
  import { OcaUint16 } from './OcaUint16.js';
7
6
  import { OcaUint8 } from './OcaUint8.js';
7
+ import { Struct } from './Struct.js';
8
8
 
9
9
  import { OcaClassAuthorityID as type } from '../types/OcaClassAuthorityID.js';
10
10
 
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * This file has been generated.
3
3
  */
4
- import { Struct } from './Struct.js';
5
4
  import { OcaUint16 } from './OcaUint16.js';
6
5
  import { String16 } from './String16.js';
6
+ import { Struct } from './Struct.js';
7
7
 
8
8
  import { OcaClassIdentification as type } from '../types/OcaClassIdentification.js';
9
9
 
@@ -1,8 +1,8 @@
1
1
  /*
2
2
  * This file has been generated.
3
3
  */
4
- import { Struct } from './Struct.js';
5
4
  import { OcaFloat32 } from './OcaFloat32.js';
5
+ import { Struct } from './Struct.js';
6
6
 
7
7
  import { OcaDBr as type } from '../types/OcaDBr.js';
8
8
 
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * This file has been generated.
3
3
  */
4
- import { Struct } from './Struct.js';
5
4
  import { OcaDelayUnit } from './OcaDelayUnit.js';
6
5
  import { OcaFloat32 } from './OcaFloat32.js';
6
+ import { Struct } from './Struct.js';
7
7
 
8
8
  import { OcaDelayValue as type } from '../types/OcaDelayValue.js';
9
9
 
@@ -1,9 +1,9 @@
1
1
  /*
2
2
  * This file has been generated.
3
3
  */
4
- import { Struct } from './Struct.js';
5
4
  import { OcaEventID } from './OcaEventID.js';
6
5
  import { OcaUint32 } from './OcaUint32.js';
6
+ import { Struct } from './Struct.js';
7
7
 
8
8
  import { OcaEvent as type } from '../types/OcaEvent.js';
9
9