EventMesg.cs 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722
  1. #region Copyright
  2. ////////////////////////////////////////////////////////////////////////////////
  3. // The following FIT Protocol software provided may be used with FIT protocol
  4. // devices only and remains the copyrighted property of Dynastream Innovations Inc.
  5. // The software is being provided on an "as-is" basis and as an accommodation,
  6. // and therefore all warranties, representations, or guarantees of any kind
  7. // (whether express, implied or statutory) including, without limitation,
  8. // warranties of merchantability, non-infringement, or fitness for a particular
  9. // purpose, are specifically disclaimed.
  10. //
  11. // Copyright 2016 Dynastream Innovations Inc.
  12. ////////////////////////////////////////////////////////////////////////////////
  13. // ****WARNING**** This file is auto-generated! Do NOT edit this file.
  14. // Profile Version = 16.60Release
  15. // Tag = production-akw-16.60.00-0-g5d3d436
  16. ////////////////////////////////////////////////////////////////////////////////
  17. #endregion
  18. using System;
  19. using System.Collections.Generic;
  20. using System.Diagnostics;
  21. using System.Text;
  22. using System.IO;
  23. namespace Dynastream.Fit
  24. {
  25. /// <summary>
  26. /// Implements the Event profile message.
  27. /// </summary>
  28. public class EventMesg : Mesg
  29. {
  30. #region Fields
  31. static class DataSubfield
  32. {
  33. public static ushort TimerTrigger = 0;
  34. public static ushort CoursePointIndex = 1;
  35. public static ushort BatteryLevel = 2;
  36. public static ushort VirtualPartnerSpeed = 3;
  37. public static ushort HrHighAlert = 4;
  38. public static ushort HrLowAlert = 5;
  39. public static ushort SpeedHighAlert = 6;
  40. public static ushort SpeedLowAlert = 7;
  41. public static ushort CadHighAlert = 8;
  42. public static ushort CadLowAlert = 9;
  43. public static ushort PowerHighAlert = 10;
  44. public static ushort PowerLowAlert = 11;
  45. public static ushort TimeDurationAlert = 12;
  46. public static ushort DistanceDurationAlert = 13;
  47. public static ushort CalorieDurationAlert = 14;
  48. public static ushort FitnessEquipmentState = 15;
  49. public static ushort SportPoint = 16;
  50. public static ushort GearChangeData = 17;
  51. public static ushort RiderPosition = 18;
  52. public static ushort CommTimeout = 19;
  53. public static ushort Subfields = 20;
  54. public static ushort Active = Fit.SubfieldIndexActiveSubfield;
  55. public static ushort MainField = Fit.SubfieldIndexMainField;
  56. }
  57. #endregion
  58. #region Constructors
  59. public EventMesg() : base(Profile.GetMesg(MesgNum.Event))
  60. {
  61. }
  62. public EventMesg(Mesg mesg) : base(mesg)
  63. {
  64. }
  65. #endregion // Constructors
  66. #region Methods
  67. ///<summary>
  68. /// Retrieves the Timestamp field
  69. /// Units: s</summary>
  70. /// <returns>Returns DateTime representing the Timestamp field</returns>
  71. public DateTime GetTimestamp()
  72. {
  73. return TimestampToDateTime((uint?)GetFieldValue(253, 0, Fit.SubfieldIndexMainField));
  74. }
  75. /// <summary>
  76. /// Set Timestamp field
  77. /// Units: s</summary>
  78. /// <param name="timestamp_">Nullable field value to be set</param>
  79. public void SetTimestamp(DateTime timestamp_)
  80. {
  81. SetFieldValue(253, 0, timestamp_.GetTimeStamp(), Fit.SubfieldIndexMainField);
  82. }
  83. ///<summary>
  84. /// Retrieves the Event field</summary>
  85. /// <returns>Returns nullable Event enum representing the Event field</returns>
  86. public Event? GetEvent()
  87. {
  88. object obj = GetFieldValue(0, 0, Fit.SubfieldIndexMainField);
  89. Event? value = obj == null ? (Event?)null : (Event)obj;
  90. return value;
  91. }
  92. /// <summary>
  93. /// Set Event field</summary>
  94. /// <param name="event_">Nullable field value to be set</param>
  95. public void SetEvent(Event? event_)
  96. {
  97. SetFieldValue(0, 0, event_, Fit.SubfieldIndexMainField);
  98. }
  99. ///<summary>
  100. /// Retrieves the EventType field</summary>
  101. /// <returns>Returns nullable EventType enum representing the EventType field</returns>
  102. public EventType? GetEventType()
  103. {
  104. object obj = GetFieldValue(1, 0, Fit.SubfieldIndexMainField);
  105. EventType? value = obj == null ? (EventType?)null : (EventType)obj;
  106. return value;
  107. }
  108. /// <summary>
  109. /// Set EventType field</summary>
  110. /// <param name="eventType_">Nullable field value to be set</param>
  111. public void SetEventType(EventType? eventType_)
  112. {
  113. SetFieldValue(1, 0, eventType_, Fit.SubfieldIndexMainField);
  114. }
  115. ///<summary>
  116. /// Retrieves the Data16 field</summary>
  117. /// <returns>Returns nullable ushort representing the Data16 field</returns>
  118. public ushort? GetData16()
  119. {
  120. return (ushort?)GetFieldValue(2, 0, Fit.SubfieldIndexMainField);
  121. }
  122. /// <summary>
  123. /// Set Data16 field</summary>
  124. /// <param name="data16_">Nullable field value to be set</param>
  125. public void SetData16(ushort? data16_)
  126. {
  127. SetFieldValue(2, 0, data16_, Fit.SubfieldIndexMainField);
  128. }
  129. ///<summary>
  130. /// Retrieves the Data field</summary>
  131. /// <returns>Returns nullable uint representing the Data field</returns>
  132. public uint? GetData()
  133. {
  134. return (uint?)GetFieldValue(3, 0, Fit.SubfieldIndexMainField);
  135. }
  136. /// <summary>
  137. /// Set Data field</summary>
  138. /// <param name="data_">Nullable field value to be set</param>
  139. public void SetData(uint? data_)
  140. {
  141. SetFieldValue(3, 0, data_, Fit.SubfieldIndexMainField);
  142. }
  143. /// <summary>
  144. /// Retrieves the TimerTrigger subfield</summary>
  145. /// <returns>Nullable TimerTrigger enum representing the TimerTrigger subfield</returns>
  146. public TimerTrigger? GetTimerTrigger()
  147. {
  148. return (TimerTrigger?)GetFieldValue(3, 0, DataSubfield.TimerTrigger);
  149. }
  150. /// <summary>
  151. ///
  152. /// Set TimerTrigger subfield</summary>
  153. /// <param name="timerTrigger">Subfield value to be set</param>
  154. public void SetTimerTrigger(byte? timerTrigger)
  155. {
  156. SetFieldValue(3, 0, timerTrigger, DataSubfield.TimerTrigger);
  157. }
  158. /// <summary>
  159. /// Retrieves the CoursePointIndex subfield</summary>
  160. /// <returns>Nullable ushort representing the CoursePointIndex subfield</returns>
  161. public ushort? GetCoursePointIndex()
  162. {
  163. return (ushort?)GetFieldValue(3, 0, DataSubfield.CoursePointIndex);
  164. }
  165. /// <summary>
  166. ///
  167. /// Set CoursePointIndex subfield</summary>
  168. /// <param name="coursePointIndex">Subfield value to be set</param>
  169. public void SetCoursePointIndex(ushort? coursePointIndex)
  170. {
  171. SetFieldValue(3, 0, coursePointIndex, DataSubfield.CoursePointIndex);
  172. }
  173. /// <summary>
  174. /// Retrieves the BatteryLevel subfield
  175. /// Units: V</summary>
  176. /// <returns>Nullable float representing the BatteryLevel subfield</returns>
  177. public float? GetBatteryLevel()
  178. {
  179. return (float?)GetFieldValue(3, 0, DataSubfield.BatteryLevel);
  180. }
  181. /// <summary>
  182. ///
  183. /// Set BatteryLevel subfield
  184. /// Units: V</summary>
  185. /// <param name="batteryLevel">Subfield value to be set</param>
  186. public void SetBatteryLevel(float? batteryLevel)
  187. {
  188. SetFieldValue(3, 0, batteryLevel, DataSubfield.BatteryLevel);
  189. }
  190. /// <summary>
  191. /// Retrieves the VirtualPartnerSpeed subfield
  192. /// Units: m/s</summary>
  193. /// <returns>Nullable float representing the VirtualPartnerSpeed subfield</returns>
  194. public float? GetVirtualPartnerSpeed()
  195. {
  196. return (float?)GetFieldValue(3, 0, DataSubfield.VirtualPartnerSpeed);
  197. }
  198. /// <summary>
  199. ///
  200. /// Set VirtualPartnerSpeed subfield
  201. /// Units: m/s</summary>
  202. /// <param name="virtualPartnerSpeed">Subfield value to be set</param>
  203. public void SetVirtualPartnerSpeed(float? virtualPartnerSpeed)
  204. {
  205. SetFieldValue(3, 0, virtualPartnerSpeed, DataSubfield.VirtualPartnerSpeed);
  206. }
  207. /// <summary>
  208. /// Retrieves the HrHighAlert subfield
  209. /// Units: bpm</summary>
  210. /// <returns>Nullable byte representing the HrHighAlert subfield</returns>
  211. public byte? GetHrHighAlert()
  212. {
  213. return (byte?)GetFieldValue(3, 0, DataSubfield.HrHighAlert);
  214. }
  215. /// <summary>
  216. ///
  217. /// Set HrHighAlert subfield
  218. /// Units: bpm</summary>
  219. /// <param name="hrHighAlert">Subfield value to be set</param>
  220. public void SetHrHighAlert(byte? hrHighAlert)
  221. {
  222. SetFieldValue(3, 0, hrHighAlert, DataSubfield.HrHighAlert);
  223. }
  224. /// <summary>
  225. /// Retrieves the HrLowAlert subfield
  226. /// Units: bpm</summary>
  227. /// <returns>Nullable byte representing the HrLowAlert subfield</returns>
  228. public byte? GetHrLowAlert()
  229. {
  230. return (byte?)GetFieldValue(3, 0, DataSubfield.HrLowAlert);
  231. }
  232. /// <summary>
  233. ///
  234. /// Set HrLowAlert subfield
  235. /// Units: bpm</summary>
  236. /// <param name="hrLowAlert">Subfield value to be set</param>
  237. public void SetHrLowAlert(byte? hrLowAlert)
  238. {
  239. SetFieldValue(3, 0, hrLowAlert, DataSubfield.HrLowAlert);
  240. }
  241. /// <summary>
  242. /// Retrieves the SpeedHighAlert subfield
  243. /// Units: m/s</summary>
  244. /// <returns>Nullable float representing the SpeedHighAlert subfield</returns>
  245. public float? GetSpeedHighAlert()
  246. {
  247. return (float?)GetFieldValue(3, 0, DataSubfield.SpeedHighAlert);
  248. }
  249. /// <summary>
  250. ///
  251. /// Set SpeedHighAlert subfield
  252. /// Units: m/s</summary>
  253. /// <param name="speedHighAlert">Subfield value to be set</param>
  254. public void SetSpeedHighAlert(float? speedHighAlert)
  255. {
  256. SetFieldValue(3, 0, speedHighAlert, DataSubfield.SpeedHighAlert);
  257. }
  258. /// <summary>
  259. /// Retrieves the SpeedLowAlert subfield
  260. /// Units: m/s</summary>
  261. /// <returns>Nullable float representing the SpeedLowAlert subfield</returns>
  262. public float? GetSpeedLowAlert()
  263. {
  264. return (float?)GetFieldValue(3, 0, DataSubfield.SpeedLowAlert);
  265. }
  266. /// <summary>
  267. ///
  268. /// Set SpeedLowAlert subfield
  269. /// Units: m/s</summary>
  270. /// <param name="speedLowAlert">Subfield value to be set</param>
  271. public void SetSpeedLowAlert(float? speedLowAlert)
  272. {
  273. SetFieldValue(3, 0, speedLowAlert, DataSubfield.SpeedLowAlert);
  274. }
  275. /// <summary>
  276. /// Retrieves the CadHighAlert subfield
  277. /// Units: rpm</summary>
  278. /// <returns>Nullable ushort representing the CadHighAlert subfield</returns>
  279. public ushort? GetCadHighAlert()
  280. {
  281. return (ushort?)GetFieldValue(3, 0, DataSubfield.CadHighAlert);
  282. }
  283. /// <summary>
  284. ///
  285. /// Set CadHighAlert subfield
  286. /// Units: rpm</summary>
  287. /// <param name="cadHighAlert">Subfield value to be set</param>
  288. public void SetCadHighAlert(ushort? cadHighAlert)
  289. {
  290. SetFieldValue(3, 0, cadHighAlert, DataSubfield.CadHighAlert);
  291. }
  292. /// <summary>
  293. /// Retrieves the CadLowAlert subfield
  294. /// Units: rpm</summary>
  295. /// <returns>Nullable ushort representing the CadLowAlert subfield</returns>
  296. public ushort? GetCadLowAlert()
  297. {
  298. return (ushort?)GetFieldValue(3, 0, DataSubfield.CadLowAlert);
  299. }
  300. /// <summary>
  301. ///
  302. /// Set CadLowAlert subfield
  303. /// Units: rpm</summary>
  304. /// <param name="cadLowAlert">Subfield value to be set</param>
  305. public void SetCadLowAlert(ushort? cadLowAlert)
  306. {
  307. SetFieldValue(3, 0, cadLowAlert, DataSubfield.CadLowAlert);
  308. }
  309. /// <summary>
  310. /// Retrieves the PowerHighAlert subfield
  311. /// Units: watts</summary>
  312. /// <returns>Nullable ushort representing the PowerHighAlert subfield</returns>
  313. public ushort? GetPowerHighAlert()
  314. {
  315. return (ushort?)GetFieldValue(3, 0, DataSubfield.PowerHighAlert);
  316. }
  317. /// <summary>
  318. ///
  319. /// Set PowerHighAlert subfield
  320. /// Units: watts</summary>
  321. /// <param name="powerHighAlert">Subfield value to be set</param>
  322. public void SetPowerHighAlert(ushort? powerHighAlert)
  323. {
  324. SetFieldValue(3, 0, powerHighAlert, DataSubfield.PowerHighAlert);
  325. }
  326. /// <summary>
  327. /// Retrieves the PowerLowAlert subfield
  328. /// Units: watts</summary>
  329. /// <returns>Nullable ushort representing the PowerLowAlert subfield</returns>
  330. public ushort? GetPowerLowAlert()
  331. {
  332. return (ushort?)GetFieldValue(3, 0, DataSubfield.PowerLowAlert);
  333. }
  334. /// <summary>
  335. ///
  336. /// Set PowerLowAlert subfield
  337. /// Units: watts</summary>
  338. /// <param name="powerLowAlert">Subfield value to be set</param>
  339. public void SetPowerLowAlert(ushort? powerLowAlert)
  340. {
  341. SetFieldValue(3, 0, powerLowAlert, DataSubfield.PowerLowAlert);
  342. }
  343. /// <summary>
  344. /// Retrieves the TimeDurationAlert subfield
  345. /// Units: s</summary>
  346. /// <returns>Nullable float representing the TimeDurationAlert subfield</returns>
  347. public float? GetTimeDurationAlert()
  348. {
  349. return (float?)GetFieldValue(3, 0, DataSubfield.TimeDurationAlert);
  350. }
  351. /// <summary>
  352. ///
  353. /// Set TimeDurationAlert subfield
  354. /// Units: s</summary>
  355. /// <param name="timeDurationAlert">Subfield value to be set</param>
  356. public void SetTimeDurationAlert(float? timeDurationAlert)
  357. {
  358. SetFieldValue(3, 0, timeDurationAlert, DataSubfield.TimeDurationAlert);
  359. }
  360. /// <summary>
  361. /// Retrieves the DistanceDurationAlert subfield
  362. /// Units: m</summary>
  363. /// <returns>Nullable float representing the DistanceDurationAlert subfield</returns>
  364. public float? GetDistanceDurationAlert()
  365. {
  366. return (float?)GetFieldValue(3, 0, DataSubfield.DistanceDurationAlert);
  367. }
  368. /// <summary>
  369. ///
  370. /// Set DistanceDurationAlert subfield
  371. /// Units: m</summary>
  372. /// <param name="distanceDurationAlert">Subfield value to be set</param>
  373. public void SetDistanceDurationAlert(float? distanceDurationAlert)
  374. {
  375. SetFieldValue(3, 0, distanceDurationAlert, DataSubfield.DistanceDurationAlert);
  376. }
  377. /// <summary>
  378. /// Retrieves the CalorieDurationAlert subfield
  379. /// Units: calories</summary>
  380. /// <returns>Nullable uint representing the CalorieDurationAlert subfield</returns>
  381. public uint? GetCalorieDurationAlert()
  382. {
  383. return (uint?)GetFieldValue(3, 0, DataSubfield.CalorieDurationAlert);
  384. }
  385. /// <summary>
  386. ///
  387. /// Set CalorieDurationAlert subfield
  388. /// Units: calories</summary>
  389. /// <param name="calorieDurationAlert">Subfield value to be set</param>
  390. public void SetCalorieDurationAlert(uint? calorieDurationAlert)
  391. {
  392. SetFieldValue(3, 0, calorieDurationAlert, DataSubfield.CalorieDurationAlert);
  393. }
  394. /// <summary>
  395. /// Retrieves the FitnessEquipmentState subfield</summary>
  396. /// <returns>Nullable FitnessEquipmentState enum representing the FitnessEquipmentState subfield</returns>
  397. public FitnessEquipmentState? GetFitnessEquipmentState()
  398. {
  399. return (FitnessEquipmentState?)GetFieldValue(3, 0, DataSubfield.FitnessEquipmentState);
  400. }
  401. /// <summary>
  402. ///
  403. /// Set FitnessEquipmentState subfield</summary>
  404. /// <param name="fitnessEquipmentState">Subfield value to be set</param>
  405. public void SetFitnessEquipmentState(byte? fitnessEquipmentState)
  406. {
  407. SetFieldValue(3, 0, fitnessEquipmentState, DataSubfield.FitnessEquipmentState);
  408. }
  409. /// <summary>
  410. /// Retrieves the SportPoint subfield</summary>
  411. /// <returns>Nullable uint representing the SportPoint subfield</returns>
  412. public uint? GetSportPoint()
  413. {
  414. return (uint?)GetFieldValue(3, 0, DataSubfield.SportPoint);
  415. }
  416. /// <summary>
  417. ///
  418. /// Set SportPoint subfield</summary>
  419. /// <param name="sportPoint">Subfield value to be set</param>
  420. public void SetSportPoint(uint? sportPoint)
  421. {
  422. SetFieldValue(3, 0, sportPoint, DataSubfield.SportPoint);
  423. }
  424. /// <summary>
  425. /// Retrieves the GearChangeData subfield</summary>
  426. /// <returns>Nullable uint representing the GearChangeData subfield</returns>
  427. public uint? GetGearChangeData()
  428. {
  429. return (uint?)GetFieldValue(3, 0, DataSubfield.GearChangeData);
  430. }
  431. /// <summary>
  432. ///
  433. /// Set GearChangeData subfield</summary>
  434. /// <param name="gearChangeData">Subfield value to be set</param>
  435. public void SetGearChangeData(uint? gearChangeData)
  436. {
  437. SetFieldValue(3, 0, gearChangeData, DataSubfield.GearChangeData);
  438. }
  439. /// <summary>
  440. /// Retrieves the RiderPosition subfield
  441. /// Comment: Indicates the rider position value.</summary>
  442. /// <returns>Nullable RiderPositionType enum representing the RiderPosition subfield</returns>
  443. public RiderPositionType? GetRiderPosition()
  444. {
  445. return (RiderPositionType?)GetFieldValue(3, 0, DataSubfield.RiderPosition);
  446. }
  447. /// <summary>
  448. ///
  449. /// Set RiderPosition subfield
  450. /// Comment: Indicates the rider position value.</summary>
  451. /// <param name="riderPosition">Subfield value to be set</param>
  452. public void SetRiderPosition(byte? riderPosition)
  453. {
  454. SetFieldValue(3, 0, riderPosition, DataSubfield.RiderPosition);
  455. }
  456. /// <summary>
  457. /// Retrieves the CommTimeout subfield</summary>
  458. /// <returns>Nullable ushort representing the CommTimeout subfield</returns>
  459. public ushort? GetCommTimeout()
  460. {
  461. return (ushort?)GetFieldValue(3, 0, DataSubfield.CommTimeout);
  462. }
  463. /// <summary>
  464. ///
  465. /// Set CommTimeout subfield</summary>
  466. /// <param name="commTimeout">Subfield value to be set</param>
  467. public void SetCommTimeout(ushort? commTimeout)
  468. {
  469. SetFieldValue(3, 0, commTimeout, DataSubfield.CommTimeout);
  470. }
  471. ///<summary>
  472. /// Retrieves the EventGroup field</summary>
  473. /// <returns>Returns nullable byte representing the EventGroup field</returns>
  474. public byte? GetEventGroup()
  475. {
  476. return (byte?)GetFieldValue(4, 0, Fit.SubfieldIndexMainField);
  477. }
  478. /// <summary>
  479. /// Set EventGroup field</summary>
  480. /// <param name="eventGroup_">Nullable field value to be set</param>
  481. public void SetEventGroup(byte? eventGroup_)
  482. {
  483. SetFieldValue(4, 0, eventGroup_, Fit.SubfieldIndexMainField);
  484. }
  485. ///<summary>
  486. /// Retrieves the Score field
  487. /// Comment: Do not populate directly. Autogenerated by decoder for sport_point subfield components</summary>
  488. /// <returns>Returns nullable ushort representing the Score field</returns>
  489. public ushort? GetScore()
  490. {
  491. return (ushort?)GetFieldValue(7, 0, Fit.SubfieldIndexMainField);
  492. }
  493. /// <summary>
  494. /// Set Score field
  495. /// Comment: Do not populate directly. Autogenerated by decoder for sport_point subfield components</summary>
  496. /// <param name="score_">Nullable field value to be set</param>
  497. public void SetScore(ushort? score_)
  498. {
  499. SetFieldValue(7, 0, score_, Fit.SubfieldIndexMainField);
  500. }
  501. ///<summary>
  502. /// Retrieves the OpponentScore field
  503. /// Comment: Do not populate directly. Autogenerated by decoder for sport_point subfield components</summary>
  504. /// <returns>Returns nullable ushort representing the OpponentScore field</returns>
  505. public ushort? GetOpponentScore()
  506. {
  507. return (ushort?)GetFieldValue(8, 0, Fit.SubfieldIndexMainField);
  508. }
  509. /// <summary>
  510. /// Set OpponentScore field
  511. /// Comment: Do not populate directly. Autogenerated by decoder for sport_point subfield components</summary>
  512. /// <param name="opponentScore_">Nullable field value to be set</param>
  513. public void SetOpponentScore(ushort? opponentScore_)
  514. {
  515. SetFieldValue(8, 0, opponentScore_, Fit.SubfieldIndexMainField);
  516. }
  517. ///<summary>
  518. /// Retrieves the FrontGearNum field
  519. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Front gear number. 1 is innermost.</summary>
  520. /// <returns>Returns nullable byte representing the FrontGearNum field</returns>
  521. public byte? GetFrontGearNum()
  522. {
  523. return (byte?)GetFieldValue(9, 0, Fit.SubfieldIndexMainField);
  524. }
  525. /// <summary>
  526. /// Set FrontGearNum field
  527. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Front gear number. 1 is innermost.</summary>
  528. /// <param name="frontGearNum_">Nullable field value to be set</param>
  529. public void SetFrontGearNum(byte? frontGearNum_)
  530. {
  531. SetFieldValue(9, 0, frontGearNum_, Fit.SubfieldIndexMainField);
  532. }
  533. ///<summary>
  534. /// Retrieves the FrontGear field
  535. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of front teeth.</summary>
  536. /// <returns>Returns nullable byte representing the FrontGear field</returns>
  537. public byte? GetFrontGear()
  538. {
  539. return (byte?)GetFieldValue(10, 0, Fit.SubfieldIndexMainField);
  540. }
  541. /// <summary>
  542. /// Set FrontGear field
  543. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of front teeth.</summary>
  544. /// <param name="frontGear_">Nullable field value to be set</param>
  545. public void SetFrontGear(byte? frontGear_)
  546. {
  547. SetFieldValue(10, 0, frontGear_, Fit.SubfieldIndexMainField);
  548. }
  549. ///<summary>
  550. /// Retrieves the RearGearNum field
  551. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Rear gear number. 1 is innermost.</summary>
  552. /// <returns>Returns nullable byte representing the RearGearNum field</returns>
  553. public byte? GetRearGearNum()
  554. {
  555. return (byte?)GetFieldValue(11, 0, Fit.SubfieldIndexMainField);
  556. }
  557. /// <summary>
  558. /// Set RearGearNum field
  559. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Rear gear number. 1 is innermost.</summary>
  560. /// <param name="rearGearNum_">Nullable field value to be set</param>
  561. public void SetRearGearNum(byte? rearGearNum_)
  562. {
  563. SetFieldValue(11, 0, rearGearNum_, Fit.SubfieldIndexMainField);
  564. }
  565. ///<summary>
  566. /// Retrieves the RearGear field
  567. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of rear teeth.</summary>
  568. /// <returns>Returns nullable byte representing the RearGear field</returns>
  569. public byte? GetRearGear()
  570. {
  571. return (byte?)GetFieldValue(12, 0, Fit.SubfieldIndexMainField);
  572. }
  573. /// <summary>
  574. /// Set RearGear field
  575. /// Comment: Do not populate directly. Autogenerated by decoder for gear_change subfield components. Number of rear teeth.</summary>
  576. /// <param name="rearGear_">Nullable field value to be set</param>
  577. public void SetRearGear(byte? rearGear_)
  578. {
  579. SetFieldValue(12, 0, rearGear_, Fit.SubfieldIndexMainField);
  580. }
  581. ///<summary>
  582. /// Retrieves the DeviceIndex field</summary>
  583. /// <returns>Returns nullable byte representing the DeviceIndex field</returns>
  584. public byte? GetDeviceIndex()
  585. {
  586. return (byte?)GetFieldValue(13, 0, Fit.SubfieldIndexMainField);
  587. }
  588. /// <summary>
  589. /// Set DeviceIndex field</summary>
  590. /// <param name="deviceIndex_">Nullable field value to be set</param>
  591. public void SetDeviceIndex(byte? deviceIndex_)
  592. {
  593. SetFieldValue(13, 0, deviceIndex_, Fit.SubfieldIndexMainField);
  594. }
  595. #endregion // Methods
  596. } // Class
  597. } // namespace