simplejsble 0.0.4 → 0.0.5

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 (272) hide show
  1. package/VERSION +1 -0
  2. package/android/CMakeLists.txt +62 -20
  3. package/cmake/epilogue.cmake +81 -0
  4. package/cmake/find/FindDBus1.cmake +20 -0
  5. package/cmake/find/Findfmt.cmake +41 -0
  6. package/cmake/find/Findgoogletest.cmake +18 -0
  7. package/cmake/parse_version.cmake +45 -0
  8. package/cmake/prelude.cmake +8 -0
  9. package/dependencies/README +4 -0
  10. package/dependencies/external/kvn/kvn_bytearray.h +297 -0
  11. package/dependencies/external/kvn/kvn_safe_callback.hpp +66 -0
  12. package/dependencies/external/kvn/logfwd.hpp +35 -0
  13. package/dependencies/internal/include/fmt/LICENSE +27 -0
  14. package/dependencies/internal/include/fmt/args.h +220 -0
  15. package/dependencies/internal/include/fmt/base.h +2962 -0
  16. package/dependencies/internal/include/fmt/chrono.h +2338 -0
  17. package/dependencies/internal/include/fmt/color.h +610 -0
  18. package/dependencies/internal/include/fmt/compile.h +539 -0
  19. package/dependencies/internal/include/fmt/core.h +5 -0
  20. package/dependencies/internal/include/fmt/format-inl.h +1949 -0
  21. package/dependencies/internal/include/fmt/format.h +4244 -0
  22. package/dependencies/internal/include/fmt/os.h +427 -0
  23. package/dependencies/internal/include/fmt/ostream.h +166 -0
  24. package/dependencies/internal/include/fmt/printf.h +633 -0
  25. package/dependencies/internal/include/fmt/ranges.h +850 -0
  26. package/dependencies/internal/include/fmt/std.h +726 -0
  27. package/dependencies/internal/include/fmt/xchar.h +373 -0
  28. package/dependencies/internal/include/nanopb/pb.h +948 -0
  29. package/dependencies/internal/include/nanopb/pb_common.h +49 -0
  30. package/dependencies/internal/include/nanopb/pb_decode.h +204 -0
  31. package/dependencies/internal/include/nanopb/pb_encode.h +195 -0
  32. package/dependencies/internal/include/simplejni/Common.hpp +598 -0
  33. package/dependencies/internal/include/simplejni/References.hpp +151 -0
  34. package/dependencies/internal/include/simplejni/Registry.hpp +249 -0
  35. package/dependencies/internal/include/simplejni/VM.hpp +93 -0
  36. package/dependencies/internal/src/nanopb/pb_common.c +388 -0
  37. package/dependencies/internal/src/nanopb/pb_decode.c +1763 -0
  38. package/dependencies/internal/src/nanopb/pb_encode.c +1009 -0
  39. package/dependencies/internal/src/simplejni/Common.cpp +4 -0
  40. package/package.json +5 -1
  41. package/simpleble/CMakeLists.txt +519 -0
  42. package/simpleble/include/simpleble/Adapter.h +102 -0
  43. package/simpleble/include/simpleble/AdapterSafe.h +58 -0
  44. package/simpleble/include/simpleble/Advanced.h +50 -0
  45. package/simpleble/include/simpleble/Characteristic.h +39 -0
  46. package/simpleble/include/simpleble/Config.h +64 -0
  47. package/simpleble/include/simpleble/Descriptor.h +30 -0
  48. package/simpleble/include/simpleble/Exceptions.h +72 -0
  49. package/simpleble/include/simpleble/Logging.h +73 -0
  50. package/simpleble/include/simpleble/Peripheral.h +82 -0
  51. package/simpleble/include/simpleble/PeripheralSafe.h +64 -0
  52. package/simpleble/include/simpleble/Service.h +34 -0
  53. package/simpleble/include/simpleble/SimpleBLE.h +8 -0
  54. package/simpleble/include/simpleble/Types.h +49 -0
  55. package/simpleble/include/simpleble/Utils.h +13 -0
  56. package/simpleble/include/simpleble_c/DEPRECATED +2 -0
  57. package/simpleble/include/simpleble_c/adapter.h +188 -0
  58. package/simpleble/include/simpleble_c/logging.h +37 -0
  59. package/simpleble/include/simpleble_c/peripheral.h +304 -0
  60. package/simpleble/include/simpleble_c/simpleble.h +21 -0
  61. package/simpleble/include/simpleble_c/types.h +73 -0
  62. package/simpleble/include/simpleble_c/utils.h +27 -0
  63. package/simpleble/src/CommonUtils.h +63 -0
  64. package/simpleble/src/Config.cpp +25 -0
  65. package/simpleble/src/Exceptions.cpp +31 -0
  66. package/simpleble/src/Logging.cpp +136 -0
  67. package/simpleble/src/LoggingInternal.h +85 -0
  68. package/simpleble/src/Utils.cpp +24 -0
  69. package/simpleble/src/backends/android/AdapterAndroid.cpp +101 -0
  70. package/simpleble/src/backends/android/AdapterAndroid.h +67 -0
  71. package/simpleble/src/backends/android/BackendAndroid.cpp +41 -0
  72. package/simpleble/src/backends/android/BackendAndroid.h +26 -0
  73. package/simpleble/src/backends/android/PeripheralAndroid.cpp +365 -0
  74. package/simpleble/src/backends/android/PeripheralAndroid.h +90 -0
  75. package/simpleble/src/backends/android/bridge/BluetoothGattCallback.cpp +432 -0
  76. package/simpleble/src/backends/android/bridge/BluetoothGattCallback.h +102 -0
  77. package/simpleble/src/backends/android/bridge/ScanCallback.cpp +142 -0
  78. package/simpleble/src/backends/android/bridge/ScanCallback.h +55 -0
  79. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothAdapter.cpp +107 -0
  80. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothAdapter.h +55 -0
  81. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothDevice.cpp +68 -0
  82. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothDevice.h +54 -0
  83. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGatt.cpp +115 -0
  84. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGatt.h +75 -0
  85. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGattCharacteristic.cpp +142 -0
  86. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGattCharacteristic.h +66 -0
  87. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGattDescriptor.cpp +67 -0
  88. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGattDescriptor.h +46 -0
  89. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGattService.cpp +106 -0
  90. package/simpleble/src/backends/android/types/android/bluetooth/BluetoothGattService.h +47 -0
  91. package/simpleble/src/backends/android/types/android/bluetooth/le/BluetoothScanner.cpp +47 -0
  92. package/simpleble/src/backends/android/types/android/bluetooth/le/BluetoothScanner.h +37 -0
  93. package/simpleble/src/backends/android/types/android/bluetooth/le/ScanRecord.cpp +69 -0
  94. package/simpleble/src/backends/android/types/android/bluetooth/le/ScanRecord.h +41 -0
  95. package/simpleble/src/backends/android/types/android/bluetooth/le/ScanResult.cpp +63 -0
  96. package/simpleble/src/backends/android/types/android/bluetooth/le/ScanResult.h +42 -0
  97. package/simpleble/src/backends/android/types/android/os/ParcelUUID.cpp +32 -0
  98. package/simpleble/src/backends/android/types/android/os/ParcelUUID.h +30 -0
  99. package/simpleble/src/backends/android/types/android/util/SparseArray.cpp +54 -0
  100. package/simpleble/src/backends/android/types/android/util/SparseArray.h +37 -0
  101. package/simpleble/src/backends/android/types/java/util/Iterator.cpp +36 -0
  102. package/simpleble/src/backends/android/types/java/util/Iterator.h +28 -0
  103. package/simpleble/src/backends/android/types/java/util/List.cpp +29 -0
  104. package/simpleble/src/backends/android/types/java/util/List.h +27 -0
  105. package/simpleble/src/backends/android/types/java/util/Set.cpp +33 -0
  106. package/simpleble/src/backends/android/types/java/util/Set.h +28 -0
  107. package/simpleble/src/backends/android/types/java/util/UUID.cpp +26 -0
  108. package/simpleble/src/backends/android/types/java/util/UUID.h +29 -0
  109. package/simpleble/src/backends/common/AdapterBase.cpp +53 -0
  110. package/simpleble/src/backends/common/AdapterBase.h +81 -0
  111. package/simpleble/src/backends/common/AdapterBaseTypes.h +22 -0
  112. package/simpleble/src/backends/common/BackendBase.h +20 -0
  113. package/simpleble/src/backends/common/BackendUtils.h +33 -0
  114. package/simpleble/src/backends/common/CharacteristicBase.cpp +28 -0
  115. package/simpleble/src/backends/common/CharacteristicBase.h +38 -0
  116. package/simpleble/src/backends/common/DescriptorBase.cpp +7 -0
  117. package/simpleble/src/backends/common/DescriptorBase.h +19 -0
  118. package/simpleble/src/backends/common/PeripheralBase.h +82 -0
  119. package/simpleble/src/backends/common/ServiceBase.cpp +18 -0
  120. package/simpleble/src/backends/common/ServiceBase.h +28 -0
  121. package/simpleble/src/backends/dongl/AdapterBaseTypes.h +22 -0
  122. package/simpleble/src/backends/dongl/AdapterDongl.cpp +369 -0
  123. package/simpleble/src/backends/dongl/AdapterDongl.h +60 -0
  124. package/simpleble/src/backends/dongl/BackendDongl.cpp +35 -0
  125. package/simpleble/src/backends/dongl/PeripheralDongl.cpp +562 -0
  126. package/simpleble/src/backends/dongl/PeripheralDongl.h +136 -0
  127. package/simpleble/src/backends/dongl/protocol/basic.pb.c +33 -0
  128. package/simpleble/src/backends/dongl/protocol/basic.pb.h +172 -0
  129. package/simpleble/src/backends/dongl/protocol/d2h.pb.c +18 -0
  130. package/simpleble/src/backends/dongl/protocol/d2h.pb.h +118 -0
  131. package/simpleble/src/backends/dongl/protocol/h2d.pb.c +12 -0
  132. package/simpleble/src/backends/dongl/protocol/h2d.pb.h +69 -0
  133. package/simpleble/src/backends/dongl/protocol/simpleble.pb.c +123 -0
  134. package/simpleble/src/backends/dongl/protocol/simpleble.pb.h +908 -0
  135. package/simpleble/src/backends/dongl/protocol/softdevice.pb.c +18 -0
  136. package/simpleble/src/backends/dongl/protocol/softdevice.pb.h +815 -0
  137. package/simpleble/src/backends/dongl/protocol/softdevice_gap.pb.c +339 -0
  138. package/simpleble/src/backends/dongl/protocol/softdevice_gap.pb.h +2086 -0
  139. package/simpleble/src/backends/dongl/protocol/softdevice_gattc.pb.c +114 -0
  140. package/simpleble/src/backends/dongl/protocol/softdevice_gattc.pb.h +772 -0
  141. package/simpleble/src/backends/dongl/protocol/softdevice_gatts.pb.c +117 -0
  142. package/simpleble/src/backends/dongl/protocol/softdevice_gatts.pb.h +766 -0
  143. package/simpleble/src/backends/dongl/protocol/softdevice_types.pb.c +207 -0
  144. package/simpleble/src/backends/dongl/protocol/softdevice_types.pb.h +1686 -0
  145. package/simpleble/src/backends/dongl/serial/Protocol.cpp +887 -0
  146. package/simpleble/src/backends/dongl/serial/Protocol.h +117 -0
  147. package/simpleble/src/backends/dongl/serial/ProtocolBase.cpp +95 -0
  148. package/simpleble/src/backends/dongl/serial/ProtocolBase.h +54 -0
  149. package/simpleble/src/backends/dongl/serial/Wire.cpp +133 -0
  150. package/simpleble/src/backends/dongl/serial/Wire.h +116 -0
  151. package/simpleble/src/backends/dongl/usb/UsbHelper.cpp +53 -0
  152. package/simpleble/src/backends/dongl/usb/UsbHelper.h +32 -0
  153. package/simpleble/src/backends/dongl/usb/UsbHelperApple.cpp +266 -0
  154. package/simpleble/src/backends/dongl/usb/UsbHelperApple.h +34 -0
  155. package/simpleble/src/backends/dongl/usb/UsbHelperImpl.h +29 -0
  156. package/simpleble/src/backends/dongl/usb/UsbHelperLinux.cpp +21 -0
  157. package/simpleble/src/backends/dongl/usb/UsbHelperLinux.h +22 -0
  158. package/simpleble/src/backends/dongl/usb/UsbHelperNull.cpp +21 -0
  159. package/simpleble/src/backends/dongl/usb/UsbHelperNull.h +22 -0
  160. package/simpleble/src/backends/dongl/usb/UsbHelperWindows.cpp +21 -0
  161. package/simpleble/src/backends/dongl/usb/UsbHelperWindows.h +22 -0
  162. package/simpleble/src/backends/linux/AdapterLinux.cpp +102 -0
  163. package/simpleble/src/backends/linux/AdapterLinux.h +55 -0
  164. package/simpleble/src/backends/linux/BackendBluez.cpp +90 -0
  165. package/simpleble/src/backends/linux/PeripheralLinux.cpp +394 -0
  166. package/simpleble/src/backends/linux/PeripheralLinux.h +90 -0
  167. package/simpleble/src/backends/linux_legacy/AdapterLinuxLegacy.cpp +102 -0
  168. package/simpleble/src/backends/linux_legacy/AdapterLinuxLegacy.h +55 -0
  169. package/simpleble/src/backends/linux_legacy/BackendBluezLegacy.cpp +87 -0
  170. package/simpleble/src/backends/linux_legacy/PeripheralLinuxLegacy.cpp +376 -0
  171. package/simpleble/src/backends/linux_legacy/PeripheralLinuxLegacy.h +90 -0
  172. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Adapter.h +46 -0
  173. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Agent.h +52 -0
  174. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Bluez.h +37 -0
  175. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/BluezOrg.h +22 -0
  176. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/BluezOrgBluez.h +26 -0
  177. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/BluezRoot.h +32 -0
  178. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Characteristic.h +47 -0
  179. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Descriptor.h +33 -0
  180. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Device.h +64 -0
  181. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Exceptions.h +43 -0
  182. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Service.h +27 -0
  183. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/Types.h +9 -0
  184. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/Adapter1.h +49 -0
  185. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/Agent1.h +100 -0
  186. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/AgentManager1.h +24 -0
  187. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/Battery1.h +32 -0
  188. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/Device1.h +62 -0
  189. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/GattCharacteristic1.h +48 -0
  190. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/GattDescriptor1.h +41 -0
  191. package/simpleble/src/backends/linux_legacy/include/simplebluezlegacy/interfaces/GattService1.h +28 -0
  192. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/advanced/Interface.h +67 -0
  193. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/advanced/InterfaceRegistry.h +62 -0
  194. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/advanced/Proxy.h +117 -0
  195. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/base/Connection.h +50 -0
  196. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/base/Exceptions.h +56 -0
  197. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/base/Holder.h +147 -0
  198. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/base/Logging.h +57 -0
  199. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/base/Message.h +89 -0
  200. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/base/Path.h +24 -0
  201. package/simpleble/src/backends/linux_legacy/include/simpledbuslegacy/interfaces/ObjectManager.h +26 -0
  202. package/simpleble/src/backends/linux_legacy/src/Adapter.cpp +78 -0
  203. package/simpleble/src/backends/linux_legacy/src/Agent.cpp +72 -0
  204. package/simpleble/src/backends/linux_legacy/src/Bluez.cpp +45 -0
  205. package/simpleble/src/backends/linux_legacy/src/BluezOrg.cpp +20 -0
  206. package/simpleble/src/backends/linux_legacy/src/BluezOrgBluez.cpp +23 -0
  207. package/simpleble/src/backends/linux_legacy/src/BluezRoot.cpp +44 -0
  208. package/simpleble/src/backends/linux_legacy/src/Characteristic.cpp +64 -0
  209. package/simpleble/src/backends/linux_legacy/src/Descriptor.cpp +27 -0
  210. package/simpleble/src/backends/linux_legacy/src/Device.cpp +104 -0
  211. package/simpleble/src/backends/linux_legacy/src/Exceptions.cpp +29 -0
  212. package/simpleble/src/backends/linux_legacy/src/Service.cpp +33 -0
  213. package/simpleble/src/backends/linux_legacy/src/advanced/Interface.cpp +155 -0
  214. package/simpleble/src/backends/linux_legacy/src/advanced/Proxy.cpp +374 -0
  215. package/simpleble/src/backends/linux_legacy/src/base/Connection.cpp +219 -0
  216. package/simpleble/src/backends/linux_legacy/src/base/Exceptions.cpp +39 -0
  217. package/simpleble/src/backends/linux_legacy/src/base/Holder.cpp +739 -0
  218. package/simpleble/src/backends/linux_legacy/src/base/Message.cpp +622 -0
  219. package/simpleble/src/backends/linux_legacy/src/base/Path.cpp +129 -0
  220. package/simpleble/src/backends/linux_legacy/src/interfaces/Adapter1.cpp +123 -0
  221. package/simpleble/src/backends/linux_legacy/src/interfaces/Agent1.cpp +143 -0
  222. package/simpleble/src/backends/linux_legacy/src/interfaces/AgentManager1.cpp +34 -0
  223. package/simpleble/src/backends/linux_legacy/src/interfaces/Battery1.cpp +30 -0
  224. package/simpleble/src/backends/linux_legacy/src/interfaces/Device1.cpp +170 -0
  225. package/simpleble/src/backends/linux_legacy/src/interfaces/GattCharacteristic1.cpp +118 -0
  226. package/simpleble/src/backends/linux_legacy/src/interfaces/GattDescriptor1.cpp +78 -0
  227. package/simpleble/src/backends/linux_legacy/src/interfaces/GattService1.cpp +28 -0
  228. package/simpleble/src/backends/linux_legacy/src/interfaces/ObjectManager.cpp +58 -0
  229. package/simpleble/src/backends/macos/AdapterBaseMacOS.h +29 -0
  230. package/simpleble/src/backends/macos/AdapterBaseMacOS.mm +235 -0
  231. package/simpleble/src/backends/macos/AdapterMac.h +78 -0
  232. package/simpleble/src/backends/macos/AdapterMac.mm +156 -0
  233. package/simpleble/src/backends/macos/BackendCoreBluetooth.mm +45 -0
  234. package/simpleble/src/backends/macos/PeripheralBaseMacOS.h +49 -0
  235. package/simpleble/src/backends/macos/PeripheralBaseMacOS.mm +714 -0
  236. package/simpleble/src/backends/macos/PeripheralMac.h +81 -0
  237. package/simpleble/src/backends/macos/PeripheralMac.mm +229 -0
  238. package/simpleble/src/backends/macos/Utils.h +9 -0
  239. package/simpleble/src/backends/macos/Utils.mm +23 -0
  240. package/simpleble/src/backends/plain/AdapterPlain.cpp +65 -0
  241. package/simpleble/src/backends/plain/AdapterPlain.h +49 -0
  242. package/simpleble/src/backends/plain/BackendPlain.cpp +30 -0
  243. package/simpleble/src/backends/plain/PeripheralPlain.cpp +159 -0
  244. package/simpleble/src/backends/plain/PeripheralPlain.h +72 -0
  245. package/simpleble/src/backends/windows/AdapterWindows.cpp +338 -0
  246. package/simpleble/src/backends/windows/AdapterWindows.h +89 -0
  247. package/simpleble/src/backends/windows/BackendWinRT.cpp +67 -0
  248. package/simpleble/src/backends/windows/BackendWinRT.h +18 -0
  249. package/simpleble/src/backends/windows/MtaManager.cpp +49 -0
  250. package/simpleble/src/backends/windows/MtaManager.h +90 -0
  251. package/simpleble/src/backends/windows/PeripheralWindows.cpp +487 -0
  252. package/simpleble/src/backends/windows/PeripheralWindows.h +129 -0
  253. package/simpleble/src/backends/windows/Utils.cpp +146 -0
  254. package/simpleble/src/backends/windows/Utils.h +47 -0
  255. package/simpleble/src/builders/BuildVec.h +32 -0
  256. package/simpleble/src/builders/BuilderBase.h +87 -0
  257. package/simpleble/src/external/TaskRunner.hpp +99 -0
  258. package/simpleble/src/external/ThreadRunner.h +52 -0
  259. package/simpleble/src/external/kvn_safe_callback.hpp +66 -0
  260. package/simpleble/src/external/kvn_safe_map.hpp +94 -0
  261. package/simpleble/src/external/kvn_threadrunner.hpp +70 -0
  262. package/simpleble/src/external/logfwd.hpp +35 -0
  263. package/simpleble/src/frontends/base/Adapter.cpp +111 -0
  264. package/simpleble/src/frontends/base/Advanced.cpp +34 -0
  265. package/simpleble/src/frontends/base/Backend.cpp +95 -0
  266. package/simpleble/src/frontends/base/Backend.h +76 -0
  267. package/simpleble/src/frontends/base/Characteristic.cpp +56 -0
  268. package/simpleble/src/frontends/base/Descriptor.cpp +21 -0
  269. package/simpleble/src/frontends/base/Peripheral.cpp +113 -0
  270. package/simpleble/src/frontends/base/Service.cpp +26 -0
  271. package/simpleble/src/frontends/safe/AdapterSafe.cpp +158 -0
  272. package/simpleble/src/frontends/safe/PeripheralSafe.cpp +219 -0
@@ -0,0 +1,18 @@
1
+ /* Automatically generated nanopb constant definitions */
2
+ /* Generated by nanopb-0.4.9.1 */
3
+
4
+ #include "protocol/softdevice.pb.h"
5
+ #if PB_PROTO_HEADER_VERSION != 40
6
+ #error Regenerate this file with the current version of nanopb generator.
7
+ #endif
8
+
9
+ PB_BIND(sd_Command, sd_Command, 2)
10
+
11
+
12
+ PB_BIND(sd_Response, sd_Response, 2)
13
+
14
+
15
+ PB_BIND(sd_Event, sd_Event, 2)
16
+
17
+
18
+