| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276 |
- #include <stdlib.h>
- #include "../../metroflip/metroflip_api.h"
- CalypsoApp* get_opus_contract_structure() {
- CalypsoApp* OpusContractStructure = malloc(sizeof(CalypsoApp));
- if(!OpusContractStructure) {
- return NULL;
- }
- int app_elements_count = 1;
- OpusContractStructure->type = CALYPSO_APP_CONTRACT;
- OpusContractStructure->container = malloc(sizeof(CalypsoContainerElement));
- OpusContractStructure->container->elements =
- malloc(app_elements_count * sizeof(CalypsoElement));
- OpusContractStructure->container->size = app_elements_count;
- OpusContractStructure->container->elements[0] = make_calypso_bitmap_element(
- "Contract",
- 7,
- (CalypsoElement[]){
- make_calypso_final_element(
- "ContractProvider",
- 8,
- "Acteur ou groupe d’acteurs ayant dèfini et assurant le service pour le contrat",
- CALYPSO_FINAL_TYPE_SERVICE_PROVIDER),
- make_calypso_final_element(
- "ContractTariff", 16, "Code tarif du contrat", CALYPSO_FINAL_TYPE_TARIFF),
- make_calypso_bitmap_element(
- "ContractValidityInfoBitmap",
- 2,
- (CalypsoElement[]){
- make_calypso_final_element(
- "ContractValidityStartDate",
- 14,
- "Date de début de validité du contrat",
- CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "ContractValidityEndDate",
- 14,
- "Date de fin de validité du contrat",
- CALYPSO_FINAL_TYPE_DATE),
- }),
- make_calypso_bitmap_element(
- "ContractData",
- 9,
- (CalypsoElement[]){
- make_calypso_final_element(
- "ContractDataSaleAgent",
- 8,
- "Acteur ayant effectué la dernière vente sur le contrat",
- CALYPSO_FINAL_TYPE_SERVICE_PROVIDER),
- make_calypso_final_element(
- "ContractDataSaleSecureDevice",
- 32,
- "Numéro du SAM utilisé pour charger le contrat",
- CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "ContractDataSaleDate",
- 14,
- "Date de chargement initial du contrat",
- CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "ContractDataSaleTime",
- 11,
- "Heure de chargement initial du contrat",
- CALYPSO_FINAL_TYPE_TIME),
- make_calypso_final_element(
- "ContractDataReloadDate",
- 14,
- "Date de rechargement du contrat",
- CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "ContractDataValidityLimitDate",
- 14,
- "Date limite pour une première utilisation du contrat",
- CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "ContractDataEndInhibitionDate",
- 14,
- "Date jusqu’à laquelle la prèsence du contrat dans une liste de suspension est ignorée",
- CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "ContractDataInhibition", 1, "Contrat invalide", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "ContractDataUsed",
- 1,
- "Contrat déjà validé au moins une fois",
- CALYPSO_FINAL_TYPE_UNKNOWN),
- }),
- make_calypso_final_element(
- "ContractUnknownE", 0, "Unknown E", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "ContractUnknownF", 0, "Unknown F", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "ContractUnknownG", 0, "Unknown G", CALYPSO_FINAL_TYPE_UNKNOWN),
- });
- return OpusContractStructure;
- }
- CalypsoApp* get_opus_event_structure() {
- CalypsoApp* OpusEventStructure = malloc(sizeof(CalypsoApp));
- if(!OpusEventStructure) {
- return NULL;
- }
- int app_elements_count = 4;
- OpusEventStructure->type = CALYPSO_APP_EVENT;
- OpusEventStructure->container = malloc(sizeof(CalypsoContainerElement));
- OpusEventStructure->container->elements = malloc(app_elements_count * sizeof(CalypsoElement));
- OpusEventStructure->container->size = app_elements_count;
- OpusEventStructure->container->elements[0] =
- make_calypso_final_element("EventDateStamp", 14, "Event date", CALYPSO_FINAL_TYPE_DATE);
- OpusEventStructure->container->elements[1] =
- make_calypso_final_element("EventTimeStamp", 11, "Event time", CALYPSO_FINAL_TYPE_TIME);
- OpusEventStructure->container->elements[2] =
- make_calypso_final_element("EventUnknownX", 19, "Unknown X", CALYPSO_FINAL_TYPE_NUMBER);
- OpusEventStructure->container->elements[3] = make_calypso_bitmap_element(
- "Event",
- 9,
- (CalypsoElement[]){
- make_calypso_final_element("EventUnknownA", 8, "Unknown A", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventResult", 8, "Code Résultat", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventServiceProvider",
- 8,
- "Identité de l’exploitant",
- CALYPSO_FINAL_TYPE_SERVICE_PROVIDER),
- make_calypso_final_element(
- "EventLocationId", 16, "Lieu de l’événement", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventRouteNumber", 16, "Référence de la ligne", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventUnknownD", 16, "Unknown D", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventUnknownE", 16, "Unknown E", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventContractPointer",
- 5,
- "Référence du contrat concerné",
- CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_bitmap_element(
- "EventData",
- 7,
- (CalypsoElement[]){
- make_calypso_final_element(
- "EventDataDateFirstStamp",
- 14,
- "Date de la première montée",
- CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "EventDataTimeFirstStamp",
- 11,
- "Heure de la première montée",
- CALYPSO_FINAL_TYPE_TIME),
- make_calypso_final_element(
- "EventDataSimulation", 1, "Simulation", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventDataRouteDirection", 4, "Sens", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventUnknownG", 4, "Unknown G", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventUnknownH", 4, "Unknown H", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EventUnknownI", 4, "Unknown I", CALYPSO_FINAL_TYPE_UNKNOWN),
- }),
- });
- return OpusEventStructure;
- }
- CalypsoApp* get_opus_env_holder_structure() {
- CalypsoApp* OpusEnvHolderStructure = malloc(sizeof(CalypsoApp));
- if(!OpusEnvHolderStructure) {
- return NULL;
- }
- int app_elements_count = 3;
- OpusEnvHolderStructure->type = CALYPSO_APP_ENV_HOLDER;
- OpusEnvHolderStructure->container = malloc(sizeof(CalypsoContainerElement));
- OpusEnvHolderStructure->container->elements =
- malloc(app_elements_count * sizeof(CalypsoElement));
- OpusEnvHolderStructure->container->size = app_elements_count;
- OpusEnvHolderStructure->container->elements[0] = make_calypso_final_element(
- "EnvApplicationVersionNumber",
- 6,
- "Numéro de version de l’application Billettique",
- CALYPSO_FINAL_TYPE_NUMBER);
- OpusEnvHolderStructure->container->elements[1] = make_calypso_bitmap_element(
- "Env",
- 7,
- (CalypsoElement[]){
- make_calypso_final_element(
- "EnvNetworkId", 24, "Identification du réseau", CALYPSO_FINAL_TYPE_NUMBER),
- make_calypso_final_element(
- "EnvApplicationIssuerId",
- 8,
- "Identification de l’émetteur de l’application",
- CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EnvApplicationValidityEndDate",
- 14,
- "Date de fin de validité de l’application",
- CALYPSO_FINAL_TYPE_DATE),
- make_calypso_bitmap_element(
- "EnvData",
- 4,
- (CalypsoElement[]){
- make_calypso_final_element(
- "EnvDataCardStatus", 1, "Statut de la carte", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EnvData2", 0, "Données complémentaires", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EnvData_CardUtilisation",
- 1,
- "Utilisation de la carte",
- CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "EnvData4", 0, "Données complémentaires", CALYPSO_FINAL_TYPE_UNKNOWN),
- }),
- make_calypso_final_element("EnvUnknownA", 0, "Unknown A", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element("EnvUnknownB", 0, "Unknown B", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element("EnvUnknownC", 0, "Unknown C", CALYPSO_FINAL_TYPE_UNKNOWN),
- });
- OpusEnvHolderStructure->container->elements[2] = make_calypso_bitmap_element(
- "Holder",
- 8,
- (CalypsoElement[]){
- make_calypso_bitmap_element(
- "HolderBirthBitmap",
- 2,
- (CalypsoElement[]){
- make_calypso_final_element(
- "HolderBirthDate", 32, "Date de naissance", CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "HolderBirthUnknownA", 0, "Unknown A", CALYPSO_FINAL_TYPE_UNKNOWN),
- }),
- make_calypso_repeater_element(
- "HolderProfilesList",
- 4,
- make_calypso_bitmap_element(
- "HolderProfile",
- 3,
- (CalypsoElement[]){
- make_calypso_final_element(
- "HolderProfileNumber", 6, "Numéro de profil", CALYPSO_FINAL_TYPE_NUMBER),
- make_calypso_final_element(
- "HolderProfileDate", 14, "Date de profil", CALYPSO_FINAL_TYPE_DATE),
- make_calypso_final_element(
- "HolderProfileUnknownA", 0, "Unknown A", CALYPSO_FINAL_TYPE_UNKNOWN),
- })),
- make_calypso_final_element(
- "HolderData_Language", 6, "Langue de l'utilisateur", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "HolderUnknownA", 0, "Unknown A", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "HolderUnknownB", 0, "Unknown B", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "HolderUnknownC", 0, "Unknown C", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "HolderUnknownD", 0, "Unknown D", CALYPSO_FINAL_TYPE_UNKNOWN),
- make_calypso_final_element(
- "HolderUnknownE", 0, "Unknown E", CALYPSO_FINAL_TYPE_UNKNOWN),
- });
- return OpusEnvHolderStructure;
- }
|