75 private:
Mode(
int mode,
int cc0,
int cc1,
int cc2);
163 private: std::vector<bool>
data;
173 public:
QrSegment(
Mode md,
int numCh,
const std::vector<bool> &dt);
181 public:
QrSegment(
Mode md,
int numCh, std::vector<bool> &&dt);
201 public:
const std::vector<bool> &
getData()
const;
291 int minVersion=1,
int maxVersion=40,
int mask=-1,
bool boostEcl=
true);
319 private: std::vector<std::vector<bool> >
modules;
334 public:
QrCode(
int ver,
Ecc ecl,
const std::vector<std::uint8_t> &dataCodewords,
int msk);
369 public:
bool getModule(
int x,
int y)
const;
412 private:
bool module(
int x,
int y)
const;
467 private:
static std::vector<std::uint8_t>
reedSolomonComputeRemainder(
const std::vector<std::uint8_t> &
data,
const std::vector<std::uint8_t> &divisor);
489 private:
static bool getBit(
long x,
int i);
552 public:
void appendBits(std::uint32_t val,
int len);
BitBuffer()
Definition QrCode.cpp:851
void appendBits(std::uint32_t val, int len)
Definition QrCode.cpp:855
Definition QrCode.hpp:236
Ecc errorCorrectionLevel
Definition QrCode.hpp:308
static std::vector< std::uint8_t > reedSolomonComputeRemainder(const std::vector< std::uint8_t > &data, const std::vector< std::uint8_t > &divisor)
Definition QrCode.cpp:759
void drawFormatBits(int msk)
Definition QrCode.cpp:445
Ecc getErrorCorrectionLevel() const
Definition QrCode.cpp:373
static QrCode encodeText(const char *text, Ecc ecl)
Definition QrCode.cpp:243
static const int PENALTY_N2
Definition QrCode.hpp:503
int getSize() const
Definition QrCode.cpp:368
std::vector< std::vector< bool > > modules
Definition QrCode.hpp:319
static int getNumRawDataModules(int ver)
Definition QrCode.cpp:711
int getVersion() const
Definition QrCode.cpp:363
static QrCode encodeBinary(const std::vector< std::uint8_t > &data, Ecc ecl)
Definition QrCode.cpp:249
static const std::int8_t ECC_CODEWORDS_PER_BLOCK[4][41]
Definition QrCode.hpp:508
static bool getBit(long x, int i)
Definition QrCode.cpp:814
int version
Definition QrCode.hpp:301
void finderPenaltyAddHistory(int currentRunLength, std::array< int, 7 > &runHistory) const
Definition QrCode.cpp:806
void applyMask(int msk)
Definition QrCode.cpp:596
static const int PENALTY_N1
Definition QrCode.hpp:502
static constexpr int MIN_VERSION
Definition QrCode.hpp:495
QrCode(int ver, Ecc ecl, const std::vector< std::uint8_t > &dataCodewords, int msk)
Definition QrCode.cpp:320
long getPenaltyScore() const
Definition QrCode.cpp:620
static std::vector< std::uint8_t > reedSolomonComputeDivisor(int degree)
Definition QrCode.cpp:734
void drawVersion()
Definition QrCode.cpp:473
static const int PENALTY_N4
Definition QrCode.hpp:505
int getMask() const
Definition QrCode.cpp:378
void setFunctionModule(int x, int y, bool isBlack)
Definition QrCode.cpp:516
bool getModule(int x, int y) const
Definition QrCode.cpp:383
static QrCode encodeSegments(const std::vector< QrSegment > &segs, Ecc ecl, int minVersion=1, int maxVersion=40, int mask=-1, bool boostEcl=true)
Definition QrCode.cpp:255
static const int PENALTY_N3
Definition QrCode.hpp:504
void drawAlignmentPattern(int x, int y)
Definition QrCode.cpp:508
std::vector< int > getAlignmentPatternPositions() const
Definition QrCode.cpp:695
static std::uint8_t reedSolomonMultiply(std::uint8_t x, std::uint8_t y)
Definition QrCode.cpp:772
Ecc
Definition QrCode.hpp:243
@ LOW
Definition QrCode.hpp:244
@ QUARTILE
Definition QrCode.hpp:246
@ HIGH
Definition QrCode.hpp:247
@ MEDIUM
Definition QrCode.hpp:245
std::vector< std::vector< bool > > isFunction
Definition QrCode.hpp:322
std::vector< std::uint8_t > addEccAndInterleave(const std::vector< std::uint8_t > &data) const
Definition QrCode.cpp:529
bool module(int x, int y) const
Definition QrCode.cpp:524
std::string toSvgString(int border) const
Definition QrCode.cpp:388
int finderPenaltyCountPatterns(const std::array< int, 7 > &runHistory) const
Definition QrCode.cpp:785
static int getFormatBits(Ecc ecl)
Definition QrCode.cpp:232
void drawFunctionPatterns()
Definition QrCode.cpp:416
static int getNumDataCodewords(int ver, Ecc ecl)
Definition QrCode.cpp:727
static constexpr int MAX_VERSION
Definition QrCode.hpp:498
void drawFinderPattern(int x, int y)
Definition QrCode.cpp:496
int finderPenaltyTerminateAndCount(bool currentRunColor, int currentRunLength, std::array< int, 7 > &runHistory) const
Definition QrCode.cpp:795
void drawCodewords(const std::vector< std::uint8_t > &data)
Definition QrCode.cpp:568
static const std::int8_t NUM_ERROR_CORRECTION_BLOCKS[4][41]
Definition QrCode.hpp:509
int mask
Definition QrCode.hpp:313
int size
Definition QrCode.hpp:305
int getModeBits() const
Definition QrCode.cpp:50
int numBitsCharCount[3]
Definition QrCode.hpp:70
static const Mode KANJI
Definition QrCode.hpp:60
static const Mode BYTE
Definition QrCode.hpp:59
Mode(int mode, int cc0, int cc1, int cc2)
Definition QrCode.cpp:42
static const Mode ALPHANUMERIC
Definition QrCode.hpp:58
int numCharCountBits(int ver) const
Definition QrCode.cpp:55
static const Mode ECI
Definition QrCode.hpp:61
int modeBits
Definition QrCode.hpp:67
static const Mode NUMERIC
Definition QrCode.hpp:57
static QrSegment makeNumeric(const char *digits)
Definition QrCode.cpp:77
Mode mode
Definition QrCode.hpp:154
int numChars
Definition QrCode.hpp:160
static bool isAlphanumeric(const char *text)
Definition QrCode.cpp:194
static QrSegment makeEci(long assignVal)
Definition QrCode.cpp:141
std::vector< bool > data
Definition QrCode.hpp:163
static QrSegment makeBytes(const std::vector< std::uint8_t > &data)
Definition QrCode.cpp:67
int getNumChars() const
Definition QrCode.cpp:218
Mode getMode() const
Definition QrCode.cpp:213
static bool isNumeric(const char *text)
Definition QrCode.cpp:203
static std::vector< QrSegment > makeSegments(const char *text)
Definition QrCode.cpp:123
const std::vector< bool > & getData() const
Definition QrCode.cpp:223
static int getTotalBits(const std::vector< QrSegment > &segs, int version)
Definition QrCode.cpp:177
static QrSegment makeAlphanumeric(const char *text)
Definition QrCode.cpp:100
QrSegment(Mode md, int numCh, const std::vector< bool > &dt)
Definition QrCode.cpp:159
static const char * ALPHANUMERIC_CHARSET
Definition QrCode.hpp:214
data_too_long(const std::string &msg)
Definition QrCode.cpp:846
static int version
Definition mdb_load.c:29
const char * text
Definition minihttptestserver.c:269
std::string data
Definition base58.cpp:37