QRencode
QR Code encoder
Main Page
Related Pages
Data Structures
Files
File List
Globals
All
Data Structures
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
qrencode.h
Go to the documentation of this file.
1
99
#ifndef QRENCODE_H
100
#define QRENCODE_H
101
102
#if defined(__cplusplus)
103
extern
"C"
{
104
#endif
105
109
typedef
enum
{
110
QR_MODE_NUL
= -1,
111
QR_MODE_NUM
= 0,
112
QR_MODE_AN
,
113
QR_MODE_8
,
114
QR_MODE_KANJI
,
115
QR_MODE_STRUCTURE
,
116
QR_MODE_ECI
,
117
QR_MODE_FNC1FIRST
,
118
QR_MODE_FNC1SECOND
,
119
}
QRencodeMode
;
120
124
typedef
enum
{
125
QR_ECLEVEL_L
= 0,
126
QR_ECLEVEL_M
,
127
QR_ECLEVEL_Q
,
128
QR_ECLEVEL_H
129
}
QRecLevel
;
130
134
#define QRSPEC_VERSION_MAX 40
135
139
#define MQRSPEC_VERSION_MAX 4
140
141
142
/******************************************************************************
143
* Input data (qrinput.c)
144
*****************************************************************************/
145
152
typedef
struct
_QRinput
QRinput
;
153
161
extern
QRinput
*
QRinput_new
(
void
);
162
172
extern
QRinput
*
QRinput_new2
(
int
version,
QRecLevel
level);
173
184
extern
QRinput
*
QRinput_newMQR
(
int
version,
QRecLevel
level);
185
200
extern
int
QRinput_append
(
QRinput
*input,
QRencodeMode
mode,
int
size,
const
unsigned
char
*data);
201
213
extern
int
QRinput_appendECIheader
(
QRinput
*input,
unsigned
int
ecinum);
214
220
extern
int
QRinput_getVersion
(
QRinput
*input);
221
230
extern
int
QRinput_setVersion
(
QRinput
*input,
int
version);
231
237
extern
QRecLevel
QRinput_getErrorCorrectionLevel
(
QRinput
*input);
238
247
extern
int
QRinput_setErrorCorrectionLevel
(
QRinput
*input,
QRecLevel
level);
248
258
extern
int
QRinput_setVersionAndErrorCorrectionLevel
(
QRinput
*input,
int
version,
QRecLevel
level);
259
265
extern
void
QRinput_free
(
QRinput
*input);
266
275
extern
int
QRinput_check
(
QRencodeMode
mode,
int
size,
const
unsigned
char
*data);
276
280
typedef
struct
_QRinput_Struct
QRinput_Struct
;
281
288
extern
QRinput_Struct
*
QRinput_Struct_new
(
void
);
289
295
extern
void
QRinput_Struct_setParity
(
QRinput_Struct
*s,
unsigned
char
parity);
296
308
extern
int
QRinput_Struct_appendInput
(
QRinput_Struct
*s,
QRinput
*input);
309
314
extern
void
QRinput_Struct_free
(
QRinput_Struct
*s);
315
328
extern
QRinput_Struct
*
QRinput_splitQRinputToStruct
(
QRinput
*input);
329
340
extern
int
QRinput_Struct_insertStructuredAppendHeaders
(
QRinput_Struct
*s);
341
345
extern
int
QRinput_setFNC1First
(
QRinput
*input);
346
350
extern
int
QRinput_setFNC1Second
(
QRinput
*input,
unsigned
char
appid);
351
352
/******************************************************************************
353
* QRcode output (qrencode.c)
354
*****************************************************************************/
355
375
typedef
struct
{
376
int
version
;
377
int
width
;
378
unsigned
char
*
data
;
379
}
QRcode
;
380
385
typedef
struct
_QRcode_List {
386
QRcode
*
code
;
387
struct
_QRcode_List *
next
;
388
}
QRcode_List
;
389
401
extern
QRcode
*
QRcode_encodeInput
(
QRinput
*input);
402
426
extern
QRcode
*
QRcode_encodeString
(
const
char
*
string
,
int
version,
QRecLevel
level,
QRencodeMode
hint,
int
casesensitive);
427
432
extern
QRcode
*
QRcode_encodeString8bit
(
const
char
*
string
,
int
version,
QRecLevel
level);
433
438
extern
QRcode
*
QRcode_encodeStringMQR
(
const
char
*
string
,
int
version,
QRecLevel
level,
QRencodeMode
hint,
int
casesensitive);
439
444
extern
QRcode
*
QRcode_encodeString8bitMQR
(
const
char
*
string
,
int
version,
QRecLevel
level);
445
458
extern
QRcode
*
QRcode_encodeData
(
int
size,
const
unsigned
char
*data,
int
version,
QRecLevel
level);
459
464
extern
QRcode
*
QRcode_encodeDataMQR
(
int
size,
const
unsigned
char
*data,
int
version,
QRecLevel
level);
465
470
extern
void
QRcode_free
(
QRcode
*qrcode);
471
478
extern
QRcode_List
*
QRcode_encodeInputStructured
(
QRinput_Struct
*s);
479
499
extern
QRcode_List
*
QRcode_encodeStringStructured
(
const
char
*
string
,
int
version,
QRecLevel
level,
QRencodeMode
hint,
int
casesensitive);
500
505
extern
QRcode_List
*
QRcode_encodeString8bitStructured
(
const
char
*
string
,
int
version,
QRecLevel
level);
506
520
extern
QRcode_List
*
QRcode_encodeDataStructured
(
int
size,
const
unsigned
char
*data,
int
version,
QRecLevel
level);
521
527
extern
int
QRcode_List_size
(
QRcode_List
*qrlist);
528
533
extern
void
QRcode_List_free
(
QRcode_List
*qrlist);
534
535
536
/******************************************************************************
537
* System utilities
538
*****************************************************************************/
539
546
extern
void
QRcode_APIVersion
(
int
*major_version,
int
*minor_version,
int
*micro_version);
547
553
extern
char
*
QRcode_APIVersionString
(
void
);
554
558
#ifndef _MSC_VER
559
extern
void
QRcode_clearCache
(
void
) __attribute__ ((deprecated));
560
#else
561
extern
void
QRcode_clearCache
(
void
);
562
#endif
563
564
#if defined(__cplusplus)
565
}
566
#endif
567
568
#endif
/* QRENCODE_H */
Generated on Mon Oct 22 2018 12:48:33 for QRencode by
1.8.3.1