@yang__yj/pixelstreaming-core 1.0.0 → 1.0.1

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 (237) hide show
  1. package/.cspell.json +48 -0
  2. package/.eslintignore +8 -0
  3. package/.eslintrc.js +8 -0
  4. package/.prettierignore +0 -0
  5. package/.prettierrc.json +6 -0
  6. package/coverage/clover.xml +3480 -0
  7. package/coverage/coverage-final.json +62 -0
  8. package/coverage/lcov-report/base.css +224 -0
  9. package/coverage/lcov-report/block-navigation.js +87 -0
  10. package/coverage/lcov-report/favicon.png +0 -0
  11. package/coverage/lcov-report/index.html +356 -0
  12. package/coverage/lcov-report/prettify.css +1 -0
  13. package/coverage/lcov-report/prettify.js +2 -0
  14. package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  15. package/coverage/lcov-report/sorter.js +196 -0
  16. package/coverage/lcov-report/src/AFK/AFKController.ts.html +559 -0
  17. package/coverage/lcov-report/src/AFK/index.html +116 -0
  18. package/coverage/lcov-report/src/Config/Config.ts.html +2764 -0
  19. package/coverage/lcov-report/src/Config/SettingBase.ts.html +280 -0
  20. package/coverage/lcov-report/src/Config/SettingFlag.ts.html +382 -0
  21. package/coverage/lcov-report/src/Config/SettingNumber.ts.html +418 -0
  22. package/coverage/lcov-report/src/Config/SettingOption.ts.html +424 -0
  23. package/coverage/lcov-report/src/Config/SettingText.ts.html +331 -0
  24. package/coverage/lcov-report/src/Config/index.html +191 -0
  25. package/coverage/lcov-report/src/DataChannel/DataChannelController.ts.html +499 -0
  26. package/coverage/lcov-report/src/DataChannel/DataChannelSender.ts.html +262 -0
  27. package/coverage/lcov-report/src/DataChannel/InitialSettings.ts.html +268 -0
  28. package/coverage/lcov-report/src/DataChannel/LatencyTestResults.ts.html +313 -0
  29. package/coverage/lcov-report/src/DataChannel/index.html +161 -0
  30. package/coverage/lcov-report/src/FreezeFrame/FreezeFrame.ts.html +427 -0
  31. package/coverage/lcov-report/src/FreezeFrame/FreezeFrameController.ts.html +427 -0
  32. package/coverage/lcov-report/src/FreezeFrame/index.html +131 -0
  33. package/coverage/lcov-report/src/Inputs/FakeTouchController.ts.html +682 -0
  34. package/coverage/lcov-report/src/Inputs/GamepadController.ts.html +985 -0
  35. package/coverage/lcov-report/src/Inputs/HoveringMouseEvents.ts.html +688 -0
  36. package/coverage/lcov-report/src/Inputs/InputClassesFactory.ts.html +505 -0
  37. package/coverage/lcov-report/src/Inputs/KeyboardController.ts.html +1048 -0
  38. package/coverage/lcov-report/src/Inputs/LockedMouseEvents.ts.html +946 -0
  39. package/coverage/lcov-report/src/Inputs/MouseButtons.ts.html +160 -0
  40. package/coverage/lcov-report/src/Inputs/MouseController.ts.html +1171 -0
  41. package/coverage/lcov-report/src/Inputs/SpecialKeyCodes.ts.html +133 -0
  42. package/coverage/lcov-report/src/Inputs/TouchController.ts.html +712 -0
  43. package/coverage/lcov-report/src/Inputs/XRGamepadController.ts.html +463 -0
  44. package/coverage/lcov-report/src/Inputs/index.html +266 -0
  45. package/coverage/lcov-report/src/Logger/Logger.ts.html +325 -0
  46. package/coverage/lcov-report/src/Logger/index.html +116 -0
  47. package/coverage/lcov-report/src/PeerConnectionController/AggregatedStats.ts.html +1018 -0
  48. package/coverage/lcov-report/src/PeerConnectionController/CandidatePairStats.ts.html +136 -0
  49. package/coverage/lcov-report/src/PeerConnectionController/CandidateStat.ts.html +124 -0
  50. package/coverage/lcov-report/src/PeerConnectionController/DataChannelStats.ts.html +136 -0
  51. package/coverage/lcov-report/src/PeerConnectionController/InboundRTPStats.ts.html +547 -0
  52. package/coverage/lcov-report/src/PeerConnectionController/OutBoundRTPStats.ts.html +163 -0
  53. package/coverage/lcov-report/src/PeerConnectionController/PeerConnectionController.ts.html +1795 -0
  54. package/coverage/lcov-report/src/PeerConnectionController/SessionStats.ts.html +115 -0
  55. package/coverage/lcov-report/src/PeerConnectionController/StreamStats.ts.html +118 -0
  56. package/coverage/lcov-report/src/PeerConnectionController/index.html +236 -0
  57. package/coverage/lcov-report/src/PixelStreaming/PixelStreaming.ts.html +2269 -0
  58. package/coverage/lcov-report/src/PixelStreaming/index.html +116 -0
  59. package/coverage/lcov-report/src/UI/OnScreenKeyboard.ts.html +376 -0
  60. package/coverage/lcov-report/src/UI/index.html +116 -0
  61. package/coverage/lcov-report/src/UeInstanceMessage/ResponseController.ts.html +226 -0
  62. package/coverage/lcov-report/src/UeInstanceMessage/SendDescriptorController.ts.html +346 -0
  63. package/coverage/lcov-report/src/UeInstanceMessage/SendMessageController.ts.html +364 -0
  64. package/coverage/lcov-report/src/UeInstanceMessage/StreamMessageController.ts.html +862 -0
  65. package/coverage/lcov-report/src/UeInstanceMessage/ToStreamerMessagesController.ts.html +271 -0
  66. package/coverage/lcov-report/src/UeInstanceMessage/TwoWayMap.ts.html +241 -0
  67. package/coverage/lcov-report/src/UeInstanceMessage/index.html +191 -0
  68. package/coverage/lcov-report/src/Util/CoordinateConverter.ts.html +952 -0
  69. package/coverage/lcov-report/src/Util/EventEmitter.ts.html +1705 -0
  70. package/coverage/lcov-report/src/Util/EventListenerTracker.ts.html +172 -0
  71. package/coverage/lcov-report/src/Util/FileUtil.ts.html +505 -0
  72. package/coverage/lcov-report/src/Util/WebGLUtils.ts.html +232 -0
  73. package/coverage/lcov-report/src/Util/WebXRUtils.ts.html +160 -0
  74. package/coverage/lcov-report/src/Util/index.html +191 -0
  75. package/coverage/lcov-report/src/VideoPlayer/StreamController.ts.html +349 -0
  76. package/coverage/lcov-report/src/VideoPlayer/VideoPlayer.ts.html +799 -0
  77. package/coverage/lcov-report/src/VideoPlayer/index.html +131 -0
  78. package/coverage/lcov-report/src/WebRtcPlayer/WebRtcPlayerController.ts.html +6199 -0
  79. package/coverage/lcov-report/src/WebRtcPlayer/index.html +116 -0
  80. package/coverage/lcov-report/src/WebSockets/MessageReceive.ts.html +352 -0
  81. package/coverage/lcov-report/src/WebSockets/MessageSend.ts.html +604 -0
  82. package/coverage/lcov-report/src/WebSockets/SignallingProtocol.ts.html +622 -0
  83. package/coverage/lcov-report/src/WebSockets/WebSocketController.ts.html +844 -0
  84. package/coverage/lcov-report/src/WebSockets/index.html +161 -0
  85. package/coverage/lcov-report/src/WebXR/WebXRController.ts.html +1042 -0
  86. package/coverage/lcov-report/src/WebXR/index.html +116 -0
  87. package/coverage/lcov-report/src/__test__/index.html +161 -0
  88. package/coverage/lcov-report/src/__test__/mockMediaStream.ts.html +457 -0
  89. package/coverage/lcov-report/src/__test__/mockRTCPeerConnection.ts.html +1126 -0
  90. package/coverage/lcov-report/src/__test__/mockRTCRtpReceiver.ts.html +151 -0
  91. package/coverage/lcov-report/src/__test__/mockWebSocket.ts.html +475 -0
  92. package/coverage/lcov-report/src/index.html +116 -0
  93. package/coverage/lcov-report/src/pixelstreamingfrontend.ts.html +232 -0
  94. package/coverage/lcov.info +6458 -0
  95. package/jest.config.js +18 -0
  96. package/package.json +46 -18
  97. package/readme.md +15 -0
  98. package/src/AFK/AFKController.test.ts +162 -0
  99. package/src/AFK/AFKController.ts +158 -0
  100. package/src/Config/Config.test.ts +222 -0
  101. package/src/Config/Config.ts +909 -0
  102. package/src/Config/SettingBase.ts +65 -0
  103. package/src/Config/SettingFlag.ts +99 -0
  104. package/src/Config/SettingNumber.ts +111 -0
  105. package/src/Config/SettingOption.ts +124 -0
  106. package/src/Config/SettingText.ts +82 -0
  107. package/src/DataChannel/DataChannelController.ts +138 -0
  108. package/src/DataChannel/DataChannelLatencyTestController.ts +129 -0
  109. package/src/DataChannel/DataChannelLatencyTestResults.ts +67 -0
  110. package/src/DataChannel/DataChannelSender.ts +59 -0
  111. package/src/DataChannel/InitialSettings.ts +61 -0
  112. package/src/DataChannel/LatencyTestResults.ts +76 -0
  113. package/src/FreezeFrame/FreezeFrame.ts +114 -0
  114. package/src/FreezeFrame/FreezeFrameController.ts +114 -0
  115. package/src/Inputs/FakeTouchController.ts +199 -0
  116. package/src/Inputs/GamepadController.ts +300 -0
  117. package/src/Inputs/GamepadTypes.ts +10 -0
  118. package/src/Inputs/HoveringMouseEvents.ts +192 -0
  119. package/src/Inputs/IMouseEvents.ts +64 -0
  120. package/src/Inputs/ITouchController.ts +29 -0
  121. package/src/Inputs/InputClassesFactory.ts +140 -0
  122. package/src/Inputs/KeyboardController.ts +318 -0
  123. package/src/Inputs/LockedMouseEvents.ts +287 -0
  124. package/src/Inputs/MouseButtons.ts +25 -0
  125. package/src/Inputs/MouseController.ts +362 -0
  126. package/src/Inputs/SpecialKeyCodes.ts +16 -0
  127. package/src/Inputs/TouchController.ts +253 -0
  128. package/src/Inputs/XRGamepadController.ts +126 -0
  129. package/src/Logger/Logger.ts +80 -0
  130. package/src/PeerConnectionController/AggregatedStats.ts +311 -0
  131. package/src/PeerConnectionController/CandidatePairStats.ts +17 -0
  132. package/src/PeerConnectionController/CandidateStat.ts +13 -0
  133. package/src/PeerConnectionController/CodecStats.ts +19 -0
  134. package/src/PeerConnectionController/DataChannelStats.ts +17 -0
  135. package/src/PeerConnectionController/InboundRTPStats.ts +154 -0
  136. package/src/PeerConnectionController/InboundTrackStats.ts +34 -0
  137. package/src/PeerConnectionController/OutBoundRTPStats.ts +26 -0
  138. package/src/PeerConnectionController/PeerConnectionController.ts +563 -0
  139. package/src/PeerConnectionController/SessionStats.ts +10 -0
  140. package/src/PeerConnectionController/StreamStats.ts +11 -0
  141. package/src/PixelStreaming/PixelStreaming.test.ts +624 -0
  142. package/src/PixelStreaming/PixelStreaming.ts +847 -0
  143. package/src/UI/OnScreenKeyboard.ts +97 -0
  144. package/src/UeInstanceMessage/ResponseController.ts +47 -0
  145. package/src/UeInstanceMessage/SendMessageController.ts +154 -0
  146. package/src/UeInstanceMessage/StreamMessageController.ts +233 -0
  147. package/src/UeInstanceMessage/ToStreamerMessagesController.ts +62 -0
  148. package/src/Util/CoordinateConverter.ts +289 -0
  149. package/src/Util/EventEmitter.ts +595 -0
  150. package/src/Util/EventListenerTracker.ts +29 -0
  151. package/src/Util/FileUtil.ts +140 -0
  152. package/src/Util/RTCUtils.ts +41 -0
  153. package/src/Util/WebGLUtils.ts +49 -0
  154. package/src/Util/WebXRUtils.ts +25 -0
  155. package/src/VideoPlayer/StreamController.ts +89 -0
  156. package/src/VideoPlayer/VideoPlayer.ts +246 -0
  157. package/src/WebRtcPlayer/WebRtcPlayerController.ts +2144 -0
  158. package/src/WebSockets/MessageReceive.ts +89 -0
  159. package/src/WebSockets/MessageSend.ts +185 -0
  160. package/src/WebSockets/SignallingProtocol.ts +180 -0
  161. package/src/WebSockets/WebSocketController.ts +267 -0
  162. package/src/WebXR/WebXRController.ts +319 -0
  163. package/src/__test__/mockMediaStream.ts +124 -0
  164. package/src/__test__/mockRTCPeerConnection.ts +347 -0
  165. package/src/__test__/mockRTCRtpReceiver.ts +22 -0
  166. package/src/__test__/mockWebSocket.ts +130 -0
  167. package/src/pixelstreamingfrontend.ts +50 -0
  168. package/tsconfig.jest.json +8 -0
  169. package/tsconfig.json +24 -0
  170. package/webpack.common.js +35 -0
  171. package/webpack.dev.js +35 -0
  172. package/webpack.prod.js +36 -0
  173. package/yang__yj-pixelstreaming-core-1.0.1.tgz +0 -0
  174. /package/{library/dist → dist}/lib-pixelstreamingfrontend.esm.js +0 -0
  175. /package/{library/dist → dist}/lib-pixelstreamingfrontend.js +0 -0
  176. /package/{library/types → types}/AFK/AFKController.d.ts +0 -0
  177. /package/{library/types → types}/Config/Config.d.ts +0 -0
  178. /package/{library/types → types}/Config/SettingBase.d.ts +0 -0
  179. /package/{library/types → types}/Config/SettingFlag.d.ts +0 -0
  180. /package/{library/types → types}/Config/SettingNumber.d.ts +0 -0
  181. /package/{library/types → types}/Config/SettingOption.d.ts +0 -0
  182. /package/{library/types → types}/Config/SettingText.d.ts +0 -0
  183. /package/{library/types → types}/DataChannel/DataChannelController.d.ts +0 -0
  184. /package/{library/types → types}/DataChannel/DataChannelSender.d.ts +0 -0
  185. /package/{library/types → types}/DataChannel/InitialSettings.d.ts +0 -0
  186. /package/{library/types → types}/DataChannel/LatencyTestResults.d.ts +0 -0
  187. /package/{library/types → types}/FreezeFrame/FreezeFrame.d.ts +0 -0
  188. /package/{library/types → types}/FreezeFrame/FreezeFrameController.d.ts +0 -0
  189. /package/{library/types → types}/Inputs/FakeTouchController.d.ts +0 -0
  190. /package/{library/types → types}/Inputs/GamepadController.d.ts +0 -0
  191. /package/{library/types → types}/Inputs/GamepadTypes.d.ts +0 -0
  192. /package/{library/types → types}/Inputs/HoveringMouseEvents.d.ts +0 -0
  193. /package/{library/types → types}/Inputs/IMouseEvents.d.ts +0 -0
  194. /package/{library/types → types}/Inputs/ITouchController.d.ts +0 -0
  195. /package/{library/types → types}/Inputs/InputClassesFactory.d.ts +0 -0
  196. /package/{library/types → types}/Inputs/KeyboardController.d.ts +0 -0
  197. /package/{library/types → types}/Inputs/LockedMouseEvents.d.ts +0 -0
  198. /package/{library/types → types}/Inputs/MouseButtons.d.ts +0 -0
  199. /package/{library/types → types}/Inputs/MouseController.d.ts +0 -0
  200. /package/{library/types → types}/Inputs/SpecialKeyCodes.d.ts +0 -0
  201. /package/{library/types → types}/Inputs/TouchController.d.ts +0 -0
  202. /package/{library/types → types}/Inputs/XRGamepadController.d.ts +0 -0
  203. /package/{library/types → types}/Logger/Logger.d.ts +0 -0
  204. /package/{library/types → types}/PeerConnectionController/AggregatedStats.d.ts +0 -0
  205. /package/{library/types → types}/PeerConnectionController/CandidatePairStats.d.ts +0 -0
  206. /package/{library/types → types}/PeerConnectionController/CandidateStat.d.ts +0 -0
  207. /package/{library/types → types}/PeerConnectionController/CodecStats.d.ts +0 -0
  208. /package/{library/types → types}/PeerConnectionController/DataChannelStats.d.ts +0 -0
  209. /package/{library/types → types}/PeerConnectionController/InboundRTPStats.d.ts +0 -0
  210. /package/{library/types → types}/PeerConnectionController/InboundTrackStats.d.ts +0 -0
  211. /package/{library/types → types}/PeerConnectionController/OutBoundRTPStats.d.ts +0 -0
  212. /package/{library/types → types}/PeerConnectionController/PeerConnectionController.d.ts +0 -0
  213. /package/{library/types → types}/PeerConnectionController/SessionStats.d.ts +0 -0
  214. /package/{library/types → types}/PeerConnectionController/StreamStats.d.ts +0 -0
  215. /package/{library/types → types}/PixelStreaming/PixelStreaming.d.ts +0 -0
  216. /package/{library/types → types}/UI/OnScreenKeyboard.d.ts +0 -0
  217. /package/{library/types → types}/UeInstanceMessage/ResponseController.d.ts +0 -0
  218. /package/{library/types → types}/UeInstanceMessage/SendDescriptorController.d.ts +0 -0
  219. /package/{library/types → types}/UeInstanceMessage/SendMessageController.d.ts +0 -0
  220. /package/{library/types → types}/UeInstanceMessage/StreamMessageController.d.ts +0 -0
  221. /package/{library/types → types}/UeInstanceMessage/ToStreamerMessagesController.d.ts +0 -0
  222. /package/{library/types → types}/UeInstanceMessage/TwoWayMap.d.ts +0 -0
  223. /package/{library/types → types}/Util/CoordinateConverter.d.ts +0 -0
  224. /package/{library/types → types}/Util/EventEmitter.d.ts +0 -0
  225. /package/{library/types → types}/Util/EventListenerTracker.d.ts +0 -0
  226. /package/{library/types → types}/Util/FileUtil.d.ts +0 -0
  227. /package/{library/types → types}/Util/WebGLUtils.d.ts +0 -0
  228. /package/{library/types → types}/Util/WebXRUtils.d.ts +0 -0
  229. /package/{library/types → types}/VideoPlayer/StreamController.d.ts +0 -0
  230. /package/{library/types → types}/VideoPlayer/VideoPlayer.d.ts +0 -0
  231. /package/{library/types → types}/WebRtcPlayer/WebRtcPlayerController.d.ts +0 -0
  232. /package/{library/types → types}/WebSockets/MessageReceive.d.ts +0 -0
  233. /package/{library/types → types}/WebSockets/MessageSend.d.ts +0 -0
  234. /package/{library/types → types}/WebSockets/SignallingProtocol.d.ts +0 -0
  235. /package/{library/types → types}/WebSockets/WebSocketController.d.ts +0 -0
  236. /package/{library/types → types}/WebXR/WebXRController.d.ts +0 -0
  237. /package/{library/types → types}/pixelstreamingfrontend.d.ts +0 -0
@@ -0,0 +1,172 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/Util/EventListenerTracker.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/Util</a> EventListenerTracker.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">100% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>6/6</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">100% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>0/0</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>3/3</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>6/6</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input oninput="onInput()" type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
96
+ <span class="cline-any cline-neutral">&nbsp;</span>
97
+ <span class="cline-any cline-neutral">&nbsp;</span>
98
+ <span class="cline-any cline-neutral">&nbsp;</span>
99
+ <span class="cline-any cline-yes">1x</span>
100
+ <span class="cline-any cline-neutral">&nbsp;</span>
101
+ <span class="cline-any cline-neutral">&nbsp;</span>
102
+ <span class="cline-any cline-neutral">&nbsp;</span>
103
+ <span class="cline-any cline-yes">67x</span>
104
+ <span class="cline-any cline-neutral">&nbsp;</span>
105
+ <span class="cline-any cline-neutral">&nbsp;</span>
106
+ <span class="cline-any cline-neutral">&nbsp;</span>
107
+ <span class="cline-any cline-neutral">&nbsp;</span>
108
+ <span class="cline-any cline-neutral">&nbsp;</span>
109
+ <span class="cline-any cline-neutral">&nbsp;</span>
110
+ <span class="cline-any cline-neutral">&nbsp;</span>
111
+ <span class="cline-any cline-yes">223x</span>
112
+ <span class="cline-any cline-neutral">&nbsp;</span>
113
+ <span class="cline-any cline-neutral">&nbsp;</span>
114
+ <span class="cline-any cline-neutral">&nbsp;</span>
115
+ <span class="cline-any cline-neutral">&nbsp;</span>
116
+ <span class="cline-any cline-neutral">&nbsp;</span>
117
+ <span class="cline-any cline-neutral">&nbsp;</span>
118
+ <span class="cline-any cline-yes">15x</span>
119
+ <span class="cline-any cline-yes">39x</span>
120
+ <span class="cline-any cline-neutral">&nbsp;</span>
121
+ <span class="cline-any cline-yes">15x</span>
122
+ <span class="cline-any cline-neutral">&nbsp;</span>
123
+ <span class="cline-any cline-neutral">&nbsp;</span>
124
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">// Copyright Epic Games, Inc. All Rights Reserved.
125
+ &nbsp;
126
+ export type UnregisterFunction = () =&gt; void;
127
+ &nbsp;
128
+ export class EventListenerTracker {
129
+ private unregisterCallbacks: UnregisterFunction[];
130
+ &nbsp;
131
+ constructor() {
132
+ this.unregisterCallbacks = [];
133
+ }
134
+ &nbsp;
135
+ /**
136
+ * Add a new callback that is executed when unregisterAll is called.
137
+ * @param callback
138
+ */
139
+ addUnregisterCallback(callback: UnregisterFunction) {
140
+ this.unregisterCallbacks.push(callback);
141
+ }
142
+ &nbsp;
143
+ /**
144
+ * Execute all callbacks and clear the list.
145
+ */
146
+ unregisterAll() {
147
+ for (const callback of this.unregisterCallbacks) {
148
+ callback();
149
+ }
150
+ this.unregisterCallbacks = [];
151
+ }
152
+ }
153
+ &nbsp;</pre></td></tr></table></pre>
154
+
155
+ <div class='push'></div><!-- for sticky footer -->
156
+ </div><!-- /wrapper -->
157
+ <div class='footer quiet pad2 space-top1 center small'>
158
+ Code coverage generated by
159
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
160
+ at 2023-07-13T09:13:52.888Z
161
+ </div>
162
+ <script src="../../prettify.js"></script>
163
+ <script>
164
+ window.onload = function () {
165
+ prettyPrint();
166
+ };
167
+ </script>
168
+ <script src="../../sorter.js"></script>
169
+ <script src="../../block-navigation.js"></script>
170
+ </body>
171
+ </html>
172
+