messages.dart 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511
  1. // Autogenerated from Pigeon (v9.1.0), do not edit directly.
  2. // See also: https://pub.dev/packages/pigeon
  3. // ignore_for_file: public_member_api_docs, non_constant_identifier_names, avoid_as, unused_import, unnecessary_parenthesis, prefer_null_aware_operators, omit_local_variable_types, unused_shown_name, unnecessary_import
  4. import 'dart:async';
  5. import 'dart:typed_data' show Float64List, Int32List, Int64List, Uint8List;
  6. import 'package:flutter/foundation.dart' show ReadBuffer, WriteBuffer;
  7. import 'package:flutter/services.dart';
  8. class Orientation {
  9. Orientation({
  10. this.x,
  11. this.y,
  12. this.z,
  13. });
  14. double? x;
  15. double? y;
  16. double? z;
  17. Object encode() {
  18. return <Object?>[
  19. x,
  20. y,
  21. z,
  22. ];
  23. }
  24. static Orientation decode(Object result) {
  25. result as List<Object?>;
  26. return Orientation(
  27. x: result[0] as double?,
  28. y: result[1] as double?,
  29. z: result[2] as double?,
  30. );
  31. }
  32. }
  33. class Position {
  34. Position({
  35. this.latitude,
  36. this.longitude,
  37. this.altitude,
  38. this.bearing,
  39. this.accuracy,
  40. this.speed,
  41. this.timeMs,
  42. });
  43. double? latitude;
  44. double? longitude;
  45. double? altitude;
  46. double? bearing;
  47. double? accuracy;
  48. /// the speed at the time of this location in meters per second.
  49. double? speed;
  50. int? timeMs;
  51. Object encode() {
  52. return <Object?>[
  53. latitude,
  54. longitude,
  55. altitude,
  56. bearing,
  57. accuracy,
  58. speed,
  59. timeMs,
  60. ];
  61. }
  62. static Position decode(Object result) {
  63. result as List<Object?>;
  64. return Position(
  65. latitude: result[0] as double?,
  66. longitude: result[1] as double?,
  67. altitude: result[2] as double?,
  68. bearing: result[3] as double?,
  69. accuracy: result[4] as double?,
  70. speed: result[5] as double?,
  71. timeMs: result[6] as int?,
  72. );
  73. }
  74. }
  75. class SportWear {
  76. SportWear({
  77. this.address,
  78. this.name,
  79. this.rssi,
  80. this.batteryLevel,
  81. });
  82. String? address;
  83. String? name;
  84. int? rssi;
  85. int? batteryLevel;
  86. Object encode() {
  87. return <Object?>[
  88. address,
  89. name,
  90. rssi,
  91. batteryLevel,
  92. ];
  93. }
  94. static SportWear decode(Object result) {
  95. result as List<Object?>;
  96. return SportWear(
  97. address: result[0] as String?,
  98. name: result[1] as String?,
  99. rssi: result[2] as int?,
  100. batteryLevel: result[3] as int?,
  101. );
  102. }
  103. }
  104. class HeartRateMeasurement {
  105. HeartRateMeasurement({
  106. this.deviceMac,
  107. this.heartRate,
  108. this.contactDetected,
  109. this.rrIntervals,
  110. this.timestampMill,
  111. });
  112. String? deviceMac;
  113. int? heartRate;
  114. bool? contactDetected;
  115. List<int?>? rrIntervals;
  116. int? timestampMill;
  117. Object encode() {
  118. return <Object?>[
  119. deviceMac,
  120. heartRate,
  121. contactDetected,
  122. rrIntervals,
  123. timestampMill,
  124. ];
  125. }
  126. static HeartRateMeasurement decode(Object result) {
  127. result as List<Object?>;
  128. return HeartRateMeasurement(
  129. deviceMac: result[0] as String?,
  130. heartRate: result[1] as int?,
  131. contactDetected: result[2] as bool?,
  132. rrIntervals: (result[3] as List<Object?>?)?.cast<int?>(),
  133. timestampMill: result[4] as int?,
  134. );
  135. }
  136. }
  137. class _SensorApiCodec extends StandardMessageCodec {
  138. const _SensorApiCodec();
  139. @override
  140. void writeValue(WriteBuffer buffer, Object? value) {
  141. if (value is HeartRateMeasurement) {
  142. buffer.putUint8(128);
  143. writeValue(buffer, value.encode());
  144. } else if (value is Orientation) {
  145. buffer.putUint8(129);
  146. writeValue(buffer, value.encode());
  147. } else if (value is Position) {
  148. buffer.putUint8(130);
  149. writeValue(buffer, value.encode());
  150. } else if (value is SportWear) {
  151. buffer.putUint8(131);
  152. writeValue(buffer, value.encode());
  153. } else {
  154. super.writeValue(buffer, value);
  155. }
  156. }
  157. @override
  158. Object? readValueOfType(int type, ReadBuffer buffer) {
  159. switch (type) {
  160. case 128:
  161. return HeartRateMeasurement.decode(readValue(buffer)!);
  162. case 129:
  163. return Orientation.decode(readValue(buffer)!);
  164. case 130:
  165. return Position.decode(readValue(buffer)!);
  166. case 131:
  167. return SportWear.decode(readValue(buffer)!);
  168. default:
  169. return super.readValueOfType(type, buffer);
  170. }
  171. }
  172. }
  173. class SensorApi {
  174. /// Constructor for [SensorApi]. The [binaryMessenger] named argument is
  175. /// available for dependency injection. If it is left null, the default
  176. /// BinaryMessenger will be used which routes to the host platform.
  177. SensorApi({BinaryMessenger? binaryMessenger})
  178. : _binaryMessenger = binaryMessenger;
  179. final BinaryMessenger? _binaryMessenger;
  180. static const MessageCodec<Object?> codec = _SensorApiCodec();
  181. /// 获取当前位置,[force]为 false 时,
  182. /// 优先使用 lastPosition,为 true 强制重新获取当前位置。
  183. Future<Position> getCurrentPosition(bool arg_force) async {
  184. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  185. 'dev.flutter.pigeon.SensorApi.getCurrentPosition', codec,
  186. binaryMessenger: _binaryMessenger);
  187. final List<Object?>? replyList =
  188. await channel.send(<Object?>[arg_force]) as List<Object?>?;
  189. if (replyList == null) {
  190. throw PlatformException(
  191. code: 'channel-error',
  192. message: 'Unable to establish connection on channel.',
  193. );
  194. } else if (replyList.length > 1) {
  195. throw PlatformException(
  196. code: replyList[0]! as String,
  197. message: replyList[1] as String?,
  198. details: replyList[2],
  199. );
  200. } else if (replyList[0] == null) {
  201. throw PlatformException(
  202. code: 'null-error',
  203. message: 'Host platform returned null value for non-null return value.',
  204. );
  205. } else {
  206. return (replyList[0] as Position?)!;
  207. }
  208. }
  209. Future<void> locationStart(int arg_minTimeMs, double arg_minDistanceM) async {
  210. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  211. 'dev.flutter.pigeon.SensorApi.locationStart', codec,
  212. binaryMessenger: _binaryMessenger);
  213. final List<Object?>? replyList =
  214. await channel.send(<Object?>[arg_minTimeMs, arg_minDistanceM]) as List<Object?>?;
  215. if (replyList == null) {
  216. throw PlatformException(
  217. code: 'channel-error',
  218. message: 'Unable to establish connection on channel.',
  219. );
  220. } else if (replyList.length > 1) {
  221. throw PlatformException(
  222. code: replyList[0]! as String,
  223. message: replyList[1] as String?,
  224. details: replyList[2],
  225. );
  226. } else {
  227. return;
  228. }
  229. }
  230. Future<void> locationStop() async {
  231. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  232. 'dev.flutter.pigeon.SensorApi.locationStop', codec,
  233. binaryMessenger: _binaryMessenger);
  234. final List<Object?>? replyList =
  235. await channel.send(null) as List<Object?>?;
  236. if (replyList == null) {
  237. throw PlatformException(
  238. code: 'channel-error',
  239. message: 'Unable to establish connection on channel.',
  240. );
  241. } else if (replyList.length > 1) {
  242. throw PlatformException(
  243. code: replyList[0]! as String,
  244. message: replyList[1] as String?,
  245. details: replyList[2],
  246. );
  247. } else {
  248. return;
  249. }
  250. }
  251. Future<void> sportWearScanStart() async {
  252. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  253. 'dev.flutter.pigeon.SensorApi.sportWearScanStart', codec,
  254. binaryMessenger: _binaryMessenger);
  255. final List<Object?>? replyList =
  256. await channel.send(null) as List<Object?>?;
  257. if (replyList == null) {
  258. throw PlatformException(
  259. code: 'channel-error',
  260. message: 'Unable to establish connection on channel.',
  261. );
  262. } else if (replyList.length > 1) {
  263. throw PlatformException(
  264. code: replyList[0]! as String,
  265. message: replyList[1] as String?,
  266. details: replyList[2],
  267. );
  268. } else {
  269. return;
  270. }
  271. }
  272. Future<void> sportWearScanStop() async {
  273. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  274. 'dev.flutter.pigeon.SensorApi.sportWearScanStop', codec,
  275. binaryMessenger: _binaryMessenger);
  276. final List<Object?>? replyList =
  277. await channel.send(null) as List<Object?>?;
  278. if (replyList == null) {
  279. throw PlatformException(
  280. code: 'channel-error',
  281. message: 'Unable to establish connection on channel.',
  282. );
  283. } else if (replyList.length > 1) {
  284. throw PlatformException(
  285. code: replyList[0]! as String,
  286. message: replyList[1] as String?,
  287. details: replyList[2],
  288. );
  289. } else {
  290. return;
  291. }
  292. }
  293. Future<bool> askEnableBluetooth() async {
  294. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  295. 'dev.flutter.pigeon.SensorApi.askEnableBluetooth', codec,
  296. binaryMessenger: _binaryMessenger);
  297. final List<Object?>? replyList =
  298. await channel.send(null) as List<Object?>?;
  299. if (replyList == null) {
  300. throw PlatformException(
  301. code: 'channel-error',
  302. message: 'Unable to establish connection on channel.',
  303. );
  304. } else if (replyList.length > 1) {
  305. throw PlatformException(
  306. code: replyList[0]! as String,
  307. message: replyList[1] as String?,
  308. details: replyList[2],
  309. );
  310. } else if (replyList[0] == null) {
  311. throw PlatformException(
  312. code: 'null-error',
  313. message: 'Host platform returned null value for non-null return value.',
  314. );
  315. } else {
  316. return (replyList[0] as bool?)!;
  317. }
  318. }
  319. Future<void> sportWearConnect(SportWear arg_wear) async {
  320. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  321. 'dev.flutter.pigeon.SensorApi.sportWearConnect', codec,
  322. binaryMessenger: _binaryMessenger);
  323. final List<Object?>? replyList =
  324. await channel.send(<Object?>[arg_wear]) as List<Object?>?;
  325. if (replyList == null) {
  326. throw PlatformException(
  327. code: 'channel-error',
  328. message: 'Unable to establish connection on channel.',
  329. );
  330. } else if (replyList.length > 1) {
  331. throw PlatformException(
  332. code: replyList[0]! as String,
  333. message: replyList[1] as String?,
  334. details: replyList[2],
  335. );
  336. } else {
  337. return;
  338. }
  339. }
  340. Future<void> sportWearDisconnect(SportWear arg_wear) async {
  341. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  342. 'dev.flutter.pigeon.SensorApi.sportWearDisconnect', codec,
  343. binaryMessenger: _binaryMessenger);
  344. final List<Object?>? replyList =
  345. await channel.send(<Object?>[arg_wear]) as List<Object?>?;
  346. if (replyList == null) {
  347. throw PlatformException(
  348. code: 'channel-error',
  349. message: 'Unable to establish connection on channel.',
  350. );
  351. } else if (replyList.length > 1) {
  352. throw PlatformException(
  353. code: replyList[0]! as String,
  354. message: replyList[1] as String?,
  355. details: replyList[2],
  356. );
  357. } else {
  358. return;
  359. }
  360. }
  361. /// 是否开启位置服务
  362. Future<bool> isLocationServiceOpen() async {
  363. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  364. 'dev.flutter.pigeon.SensorApi.isLocationServiceOpen', codec,
  365. binaryMessenger: _binaryMessenger);
  366. final List<Object?>? replyList =
  367. await channel.send(null) as List<Object?>?;
  368. if (replyList == null) {
  369. throw PlatformException(
  370. code: 'channel-error',
  371. message: 'Unable to establish connection on channel.',
  372. );
  373. } else if (replyList.length > 1) {
  374. throw PlatformException(
  375. code: replyList[0]! as String,
  376. message: replyList[1] as String?,
  377. details: replyList[2],
  378. );
  379. } else if (replyList[0] == null) {
  380. throw PlatformException(
  381. code: 'null-error',
  382. message: 'Host platform returned null value for non-null return value.',
  383. );
  384. } else {
  385. return (replyList[0] as bool?)!;
  386. }
  387. }
  388. Future<double> getYDPI() async {
  389. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  390. 'dev.flutter.pigeon.SensorApi.getYDPI', codec,
  391. binaryMessenger: _binaryMessenger);
  392. final List<Object?>? replyList =
  393. await channel.send(null) as List<Object?>?;
  394. if (replyList == null) {
  395. throw PlatformException(
  396. code: 'channel-error',
  397. message: 'Unable to establish connection on channel.',
  398. );
  399. } else if (replyList.length > 1) {
  400. throw PlatformException(
  401. code: replyList[0]! as String,
  402. message: replyList[1] as String?,
  403. details: replyList[2],
  404. );
  405. } else if (replyList[0] == null) {
  406. throw PlatformException(
  407. code: 'null-error',
  408. message: 'Host platform returned null value for non-null return value.',
  409. );
  410. } else {
  411. return (replyList[0] as double?)!;
  412. }
  413. }
  414. Future<double> getXDPI() async {
  415. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  416. 'dev.flutter.pigeon.SensorApi.getXDPI', codec,
  417. binaryMessenger: _binaryMessenger);
  418. final List<Object?>? replyList =
  419. await channel.send(null) as List<Object?>?;
  420. if (replyList == null) {
  421. throw PlatformException(
  422. code: 'channel-error',
  423. message: 'Unable to establish connection on channel.',
  424. );
  425. } else if (replyList.length > 1) {
  426. throw PlatformException(
  427. code: replyList[0]! as String,
  428. message: replyList[1] as String?,
  429. details: replyList[2],
  430. );
  431. } else if (replyList[0] == null) {
  432. throw PlatformException(
  433. code: 'null-error',
  434. message: 'Host platform returned null value for non-null return value.',
  435. );
  436. } else {
  437. return (replyList[0] as double?)!;
  438. }
  439. }
  440. /// 只需要空实现即可,class必须有函数引用才会生成代码
  441. Future<void> toGenAllClass(Orientation arg_orientation, HeartRateMeasurement arg_hrm, Position arg_position) async {
  442. final BasicMessageChannel<Object?> channel = BasicMessageChannel<Object?>(
  443. 'dev.flutter.pigeon.SensorApi.toGenAllClass', codec,
  444. binaryMessenger: _binaryMessenger);
  445. final List<Object?>? replyList =
  446. await channel.send(<Object?>[arg_orientation, arg_hrm, arg_position]) as List<Object?>?;
  447. if (replyList == null) {
  448. throw PlatformException(
  449. code: 'channel-error',
  450. message: 'Unable to establish connection on channel.',
  451. );
  452. } else if (replyList.length > 1) {
  453. throw PlatformException(
  454. code: replyList[0]! as String,
  455. message: replyList[1] as String?,
  456. details: replyList[2],
  457. );
  458. } else {
  459. return;
  460. }
  461. }
  462. }