MBNNIncidentInfo.h 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. // This file is generated and will be overwritten automatically.
  2. #import <Foundation/Foundation.h>
  3. #import <MapboxNavigationNative/MBNNIncidentImpact.h>
  4. #import <MapboxNavigationNative/MBNNIncidentType.h>
  5. @class MBNNIncidentCongestion;
  6. @class MBNNOpenLR;
  7. NS_SWIFT_NAME(IncidentInfo)
  8. __attribute__((visibility ("default")))
  9. @interface MBNNIncidentInfo : NSObject
  10. // This class provides custom init which should be called
  11. - (nonnull instancetype)init NS_UNAVAILABLE;
  12. // This class provides custom init which should be called
  13. + (nonnull instancetype)new NS_UNAVAILABLE;
  14. - (nonnull instancetype)initWithId:(nonnull NSString *)id
  15. openlr:(nullable MBNNOpenLR *)openlr
  16. type:(MBNNIncidentType)type
  17. startTime:(nullable NSDate *)startTime
  18. endTime:(nullable NSDate *)endTime
  19. creationTime:(nullable NSDate *)creationTime
  20. iso_3166_1_alpha2:(nullable NSString *)iso_3166_1_alpha2
  21. iso_3166_1_alpha3:(nullable NSString *)iso_3166_1_alpha3
  22. lanesBlocked:(nonnull NSArray<NSString *> *)lanesBlocked
  23. roadClosed:(BOOL)roadClosed
  24. congestion:(nullable MBNNIncidentCongestion *)congestion
  25. impact:(MBNNIncidentImpact)impact
  26. description:(nullable NSString *)description
  27. subType:(nullable NSString *)subType
  28. subTypeDescription:(nullable NSString *)subTypeDescription
  29. alertcCodes:(nonnull NSArray<NSNumber *> *)alertcCodes
  30. longDescription:(nullable NSString *)longDescription
  31. lanesClearDesc:(nullable NSString *)lanesClearDesc
  32. numLanesBlocked:(nullable NSNumber *)numLanesBlocked
  33. affectedRoadNames:(nonnull NSArray<NSString *> *)affectedRoadNames;
  34. /** id of incident */
  35. @property (nonatomic, readonly, nonnull, copy) NSString *id;
  36. /** OpenLR */
  37. @property (nonatomic, readonly, nullable) MBNNOpenLR *openlr;
  38. /** type of incident */
  39. @property (nonatomic, readonly) MBNNIncidentType type;
  40. /** start time of incident */
  41. @property (nonatomic, readonly, nullable) NSDate *startTime;
  42. /** end time of incident */
  43. @property (nonatomic, readonly, nullable) NSDate *endTime;
  44. /** creation time of incident */
  45. @property (nonatomic, readonly, nullable) NSDate *creationTime;
  46. /** ISO-3166-1 (2-letter country name) */
  47. @property (nonatomic, readonly, nullable, copy) NSString *iso_3166_1_alpha2;
  48. /** ISO-3166-1 (3-letter country name) */
  49. @property (nonatomic, readonly, nullable, copy) NSString *iso_3166_1_alpha3;
  50. /**
  51. * lanes which are blocked
  52. * examples (case is not guaranteed): LEFT, LEFT CENTER, LEFT TURN LANE, CENTER, RIGHT, RIGHT CENTER,
  53. * RIGHT TURN LANE, HOV, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, SIDE, SHOULDER, MEDIAN
  54. */
  55. @property (nonatomic, readonly, nonnull, copy) NSArray<NSString *> *lanesBlocked;
  56. /** `true` if road is closed and no possibility to pass through there */
  57. @property (nonatomic, readonly, getter=isRoadClosed) BOOL roadClosed;
  58. /** quantitative descriptor of congestion */
  59. @property (nonatomic, readonly, nullable) MBNNIncidentCongestion *congestion;
  60. /** the rate of incident */
  61. @property (nonatomic, readonly) MBNNIncidentImpact impact;
  62. /** human-readable description of the incident suitable for displaying to the users */
  63. @property (nonatomic, readonly, nullable, copy) NSString *description;
  64. /** sub-type of the incident */
  65. @property (nonatomic, readonly, nullable, copy) NSString *subType;
  66. /** sub-type-specific description */
  67. @property (nonatomic, readonly, nullable, copy) NSString *subTypeDescription;
  68. /** RDS-TMC alert-c codes of incident */
  69. @property (nonatomic, readonly, nonnull, copy) NSArray<NSNumber *> *alertcCodes;
  70. /** detailed description of incident */
  71. @property (nonatomic, readonly, nullable, copy) NSString *longDescription;
  72. /**
  73. * Describes which lanes are clear.
  74. * For Example:
  75. * - one lane gets by
  76. * - only shoulder gets by
  77. * - two left lanes get by
  78. */
  79. @property (nonatomic, readonly, nullable, copy) NSString *lanesClearDesc;
  80. /** number of lanes blocked */
  81. @property (nonatomic, readonly, nullable) NSNumber *numLanesBlocked;
  82. /** list of roads names affected by the incident */
  83. @property (nonatomic, readonly, nonnull, copy) NSArray<NSString *> *affectedRoadNames;
  84. @end