navigo_i.h 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. #include <datetime.h>
  2. #include <stdbool.h>
  3. #ifndef NAVIGO_I_H
  4. #define NAVIGO_I_H
  5. typedef struct {
  6. int transport_type;
  7. int transition;
  8. int service_provider;
  9. int station_group_id;
  10. int station_id;
  11. int station_sub_id;
  12. int location_gate;
  13. bool location_gate_available;
  14. int device;
  15. int door;
  16. int side;
  17. bool device_available;
  18. int route_number;
  19. bool route_number_available;
  20. int mission;
  21. bool mission_available;
  22. int vehicle_id;
  23. bool vehicle_id_available;
  24. int used_contract;
  25. bool used_contract_available;
  26. DateTime date;
  27. } NavigoCardEvent;
  28. typedef struct {
  29. int transport_type;
  30. int transition;
  31. int result;
  32. int service_provider;
  33. int station_group_id;
  34. int station_id;
  35. int station_sub_id;
  36. int device;
  37. bool device_available;
  38. int route_number;
  39. bool route_number_available;
  40. DateTime date;
  41. } NavigoCardSpecialEvent;
  42. typedef struct {
  43. int app_version;
  44. int country_num;
  45. int network_num;
  46. DateTime end_dt;
  47. } NavigoCardEnv;
  48. typedef struct {
  49. int card_status;
  50. int commercial_id;
  51. } NavigoCardHolder;
  52. typedef struct {
  53. int count;
  54. int relative_first_stamp_15mn;
  55. int struct_number;
  56. int last_load;
  57. } NavigoCardContractCounter;
  58. typedef struct {
  59. int tariff;
  60. int serial_number;
  61. bool serial_number_available;
  62. int pay_method;
  63. bool pay_method_available;
  64. double price_amount;
  65. bool price_amount_available;
  66. DateTime start_date;
  67. DateTime end_date;
  68. bool end_date_available;
  69. int zones[5];
  70. bool zones_available;
  71. DateTime sale_date;
  72. int sale_agent;
  73. int sale_device;
  74. int status;
  75. int authenticator;
  76. NavigoCardContractCounter counter;
  77. bool counter_present;
  78. bool present;
  79. } NavigoCardContract;
  80. typedef struct {
  81. NavigoCardEnv environment;
  82. NavigoCardHolder holder;
  83. NavigoCardContract contracts[4];
  84. NavigoCardEvent events[3];
  85. NavigoCardSpecialEvent special_events[3];
  86. } NavigoCardData;
  87. #endif // NAVIGO_I_H