44 #ifndef SCRIPTEL_EASYSCRIPT_H
45 #define SCRIPTEL_EASYSCRIPT_H
53 #define SCRIPTEL_SYMBOL_EXPORT __declspec(dllexport)
55 #ifdef SCRIPTEL_EXPORT_DLL
62 #define SCRIPTEL_SYMBOL_LINKAGE __declspec(dllexport)
70 #define SCRIPTEL_SYMBOL_LINKAGE __declspec(dllimport)
80 #define SCRIPTEL_SYMBOL_EXPORT extern
89 #define SCRIPTEL_SYMBOL_LINKAGE extern
197 const char value_table[2][2][23];
488 "Standard EasyScript Protocol",
498 {0x41,0x43,0x45,0x47,0x49,0x4b,0x4d,0x4f,0x51,0x53,0x55,0x57,0x59,0x21,0x23,0x25,0x26,0x28,0x2b,0x7d,0x22,0x3c,0x00},
499 {0x42,0x44,0x46,0x48,0x4a,0x4c,0x4e,0x50,0x52,0x54,0x56,0x58,0x5a,0x40,0x24,0x5e,0x2a,0x29,0x5f,0x7b,0x7c,0x3a,0x3e}
501 {0x61,0x63,0x65,0x67,0x69,0x6b,0x6d,0x6f,0x71,0x73,0x75,0x77,0x79,0x31,0x33,0x35,0x37,0x39,0x3d,0x5d,0x27,0x2c,0x00},
502 {0x62,0x64,0x66,0x68,0x6a,0x6c,0x6e,0x70,0x72,0x74,0x76,0x78,0x7a,0x32,0x34,0x36,0x38,0x30,0x2d,0x5b,0x5c,0x3b,0x2e}
513 "Standard EasyScript Card Swipe Protocol",
522 #define SCRIPTEL_ERROR_MAX_LEN 512
529 #define SCRIPTEL_EASYSCRIPT_LIBRARY_VERSION = "3.5.29";
535 #define SCRIPTEL_EASYSCRIPT_BUILD_DATE = "2022-08-30 17:12:23-0400";
SCRIPTEL_SYMBOL_LINKAGE void scriptel_free_cardswipe(scriptel_cardswipe *swipe)
SCRIPTEL_SYMBOL_LINKAGE const char * scriptel_get_card_issuer_name(scriptel_financial_card_vendor vendor)
SCRIPTEL_SYMBOL_LINKAGE void scriptel_remove_event_listener(void(*event_listener)(streaming_event_data *sd))
callback_type
Definition: scriptel-easyscript.h:406
@ CBT_CARD_DATA
card data
Definition: scriptel-easyscript.h:412
@ CBT_CANCEL
the signature has been cancelled
Definition: scriptel-easyscript.h:410
@ CBT_COORDINATE
new new coordinate
Definition: scriptel-easyscript.h:408
@ CBT_NEWSTROKE
notification of a new stroke
Definition: scriptel-easyscript.h:407
@ CBT_METADATA
metadata for the upcoming signature
Definition: scriptel-easyscript.h:409
@ CBT_END_OF_SIGNATURE
the end of the signature has been reached succesfully
Definition: scriptel-easyscript.h:411
static const scriptel_cardswipe_protocol STN_CARDSWIPE_PROTOCOL
The standard card swipe protocol for the ScripTouch series devices.
Definition: scriptel-easyscript.h:512
SCRIPTEL_SYMBOL_LINKAGE char * scriptel_get_last_error()
SCRIPTEL_SYMBOL_LINKAGE scriptel_return_status scriptel_keyboard_parse_signature(scriptel_signature_protocol *sig_protocol, scriptel_signature *signature, char *buffer, int len)
SCRIPTEL_SYMBOL_LINKAGE void scriptel_print_signature(scriptel_signature *signature)
SCRIPTEL_SYMBOL_LINKAGE scriptel_return_status scriptel_keyboard_parse_keycode(const scriptel_signature_protocol *sig_protocol, int code, int shift)
SCRIPTEL_SYMBOL_LINKAGE void scriptel_add_event_listener(void(*event_listener)(streaming_event_data *sd))
SCRIPTEL_SYMBOL_LINKAGE scriptel_return_status scriptel_keyboard_parse_cardswipe(const scriptel_cardswipe_protocol *swipe_protocol, scriptel_cardswipe *swipe, char *buffer, int len)
static const scriptel_signature_protocol STN_SIGNATURE_PROTOCOL
The standard signature protocol for the ScripTouch series devices.
Definition: scriptel-easyscript.h:487
SCRIPTEL_SYMBOL_LINKAGE scriptel_return_status scriptel_keyboard_parse_char(const scriptel_signature_protocol *sig_protocol, char chr)
scriptel_return_status
This enumeration contains a set of return codes that functions in this library may return.
Definition: scriptel-easyscript.h:98
@ SCRIPTEL_RETR_SUCCESS
Definition: scriptel-easyscript.h:109
@ SCRIPTEL_RETR_ERROR
Definition: scriptel-easyscript.h:104
#define SCRIPTEL_SYMBOL_LINKAGE
Definition: scriptel-easyscript.h:89
SCRIPTEL_SYMBOL_LINKAGE void scriptel_free_memory()
SCRIPTEL_SYMBOL_LINKAGE void scriptel_free_signature(scriptel_signature *signature)
SCRIPTEL_SYMBOL_LINKAGE void scriptel_remove_all_event_listeners()
scriptel_financial_card_vendor
This enumeration contains a set of known financial card issuers.
Definition: scriptel-easyscript.h:115
@ DINERS_CLUB
Definition: scriptel-easyscript.h:123
@ VISA
Definition: scriptel-easyscript.h:147
@ UNKNOWN
Definition: scriptel-easyscript.h:151
@ ENROUTE
Definition: scriptel-easyscript.h:135
@ AMERICAN_EXPRESS
Definition: scriptel-easyscript.h:119
@ CARTE_BLANCHE
Definition: scriptel-easyscript.h:127
@ JCB
Definition: scriptel-easyscript.h:139
@ MASTERCARD
Definition: scriptel-easyscript.h:143
@ DISCOVER
Definition: scriptel-easyscript.h:131
SCRIPTEL_SYMBOL_LINKAGE void scriptel_print_cardswipe(scriptel_cardswipe *swipe)
This structure contains information about a card swipe protocol that can be used to decode a card swi...
Definition: scriptel-easyscript.h:204
char * sentinel
Definition: scriptel-easyscript.h:221
char end_stream
Definition: scriptel-easyscript.h:216
char start_stream
Definition: scriptel-easyscript.h:212
char * protocol_name
Definition: scriptel-easyscript.h:208
This structure represents a parsed card swipe.
Definition: scriptel-easyscript.h:437
char * protocol_version
Protocol version that generated this card swipe.
Definition: scriptel-easyscript.h:439
scriptel_identification_card * identification_card
Identification card information if the card was able to be parsed, null otherwise.
Definition: scriptel-easyscript.h:442
char * card_data
Raw captured card data.
Definition: scriptel-easyscript.h:440
scriptel_financial_card * financial_card
Financial card information if the card was able to be parsed, null otherwise.
Definition: scriptel-easyscript.h:441
callback_type type
this will be set to CBT_CARD_DATA
Definition: scriptel-easyscript.h:438
This structure represents a single coordinate.
Definition: scriptel-easyscript.h:418
double y
The vertical coordinate, between 0 and protocol->height.
Definition: scriptel-easyscript.h:421
callback_type type
this will be set to CBT_COORDINATE
Definition: scriptel-easyscript.h:419
double x
The horizontal coordinate, between 0 and protocol->width.
Definition: scriptel-easyscript.h:420
This structure represents a financial card.
Definition: scriptel-easyscript.h:281
scriptel_financial_card_vendor card_issuer
The issuer of the financial card.
Definition: scriptel-easyscript.h:284
scriptel_financial_track_one * track_one
Track one of the financial card.
Definition: scriptel-easyscript.h:282
char number_valid
Whether or not the card number is valid per Luhn's algorithm. 1 for valid, 0 for invalid.
Definition: scriptel-easyscript.h:285
scriptel_financial_track_two * track_two
Track two of the financial card.
Definition: scriptel-easyscript.h:283
This structure represents the first track of a financial card.
Definition: scriptel-easyscript.h:227
time_t expiration
Definition: scriptel-easyscript.h:244
char * last_name
Definition: scriptel-easyscript.h:239
char * first_name
Definition: scriptel-easyscript.h:235
char * service_code
Definition: scriptel-easyscript.h:248
char * account_number
Definition: scriptel-easyscript.h:231
char * discretionary_data
Definition: scriptel-easyscript.h:252
This structure represents the second track of a financial card.
Definition: scriptel-easyscript.h:258
time_t expiration
Definition: scriptel-easyscript.h:267
char * service_code
Definition: scriptel-easyscript.h:271
char * account_number
Definition: scriptel-easyscript.h:262
char * discretionary_data
Definition: scriptel-easyscript.h:275
This structure contains information from an identification card.
Definition: scriptel-easyscript.h:397
scriptel_identification_track_one * track_one
Track one of the identification card.
Definition: scriptel-easyscript.h:398
scriptel_identification_track_two * track_two
Track two of the identification card.
Definition: scriptel-easyscript.h:399
scriptel_identification_track_three * track_three
Track three of the identification card.
Definition: scriptel-easyscript.h:400
This structure represents the first track of an identification card.
Definition: scriptel-easyscript.h:291
char * city
Definition: scriptel-easyscript.h:299
char * middle_name
Definition: scriptel-easyscript.h:311
char * last_name
Definition: scriptel-easyscript.h:303
char * state
Definition: scriptel-easyscript.h:295
char * first_name
Definition: scriptel-easyscript.h:307
char * address
Definition: scriptel-easyscript.h:315
char * discretionary_data
Definition: scriptel-easyscript.h:319
This structure represents track three of an identification card.
Definition: scriptel-easyscript.h:347
char * restrictions
Definition: scriptel-easyscript.h:367
int jurisdiction_version
Definition: scriptel-easyscript.h:355
char * hair_color
Definition: scriptel-easyscript.h:387
char * endorsements
Definition: scriptel-easyscript.h:371
char * zip_code
Definition: scriptel-easyscript.h:359
char * weight
Definition: scriptel-easyscript.h:383
char * height
Definition: scriptel-easyscript.h:379
char * eye_color
Definition: scriptel-easyscript.h:391
char * sex
Definition: scriptel-easyscript.h:375
int cds_version
Definition: scriptel-easyscript.h:351
char * license_class
Definition: scriptel-easyscript.h:363
This structure represents track two of an identification card.
Definition: scriptel-easyscript.h:325
time_t birth_date
Definition: scriptel-easyscript.h:341
char * issuer_number
Definition: scriptel-easyscript.h:329
time_t expiration
Definition: scriptel-easyscript.h:337
char * id_number
Definition: scriptel-easyscript.h:333
This structure contains information about a signature protocol that can be used to decode a signature...
Definition: scriptel-easyscript.h:158
int width
Definition: scriptel-easyscript.h:188
char end_stream
Definition: scriptel-easyscript.h:170
char start_stream
Definition: scriptel-easyscript.h:166
char cancel
Definition: scriptel-easyscript.h:174
const char * protocol_name
Definition: scriptel-easyscript.h:162
int height
Definition: scriptel-easyscript.h:193
char pen_up
Definition: scriptel-easyscript.h:178
const char * sentinel
Definition: scriptel-easyscript.h:183
This structure represents a signature which is made up up the header information as well as zero or m...
Definition: scriptel-easyscript.h:474
scriptel_stroke * strokes
Pointer to the first stroke in the signature.
Definition: scriptel-easyscript.h:479
int width
Virtual width of the coordinate space (maximum x coordinate).
Definition: scriptel-easyscript.h:480
char * protocol_version
The protocol version used to encode/decode this signature.
Definition: scriptel-easyscript.h:475
char * version
The firmware version of the device used to make this firmware.
Definition: scriptel-easyscript.h:477
int length
The number of strokes in this signature.
Definition: scriptel-easyscript.h:478
int height
Virtual height of the coordinate space (maximum y coordinate).
Definition: scriptel-easyscript.h:481
char * model
The model number of the device used to make this signature.
Definition: scriptel-easyscript.h:476
This structure represents a stroke which is made up of contingiously connected coordinates.
Definition: scriptel-easyscript.h:459
int length
Definition: scriptel-easyscript.h:463
scriptel_coordinate * coordinates
Definition: scriptel-easyscript.h:467
Definition: scriptel-easyscript.h:448
signature_meta_data meta_data
the meta data for the upcoming signature
Definition: scriptel-easyscript.h:450
scriptel_coordinate coordinate
a signature coordinate
Definition: scriptel-easyscript.h:451
scriptel_cardswipe card_swipe
cardswipe information
Definition: scriptel-easyscript.h:452
callback_type type
the type of data contained
Definition: scriptel-easyscript.h:449