diff options
Diffstat (limited to 'source/codes/Qr.mc')
| -rw-r--r-- | source/codes/Qr.mc | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/source/codes/Qr.mc b/source/codes/Qr.mc index 8af0f5a..1fa69da 100644 --- a/source/codes/Qr.mc +++ b/source/codes/Qr.mc @@ -207,9 +207,8 @@ module Qr { return err != null ? new Codes.CodeError(err) : job.result as MatrixCode; } - class QrJob extends Jobs.Job { + class QrJob extends Codes.MatrixJob { - var error as String? = null; var result as MatrixCode? = null; private var _data as ByteArray; @@ -237,7 +236,7 @@ module Qr { // ec: 0 L, 1 M, 2 Q, 3 H. forceVersion 0 = smallest that fits; // forceMask -1 = best by penalty. function initialize(text as String, ec as Number, forceVersion as Number, forceMask as Number) { - Job.initialize(); + MatrixJob.initialize(); _data = Bytes.fromUtf8(text); _ec = ec; _forceMask = forceMask; @@ -249,6 +248,12 @@ module Qr { return _phase * 100 / 6; } + // The code as a generic matrix with QR's 4-module quiet zone. + function matrix() as Codes.Matrix? { + var r = result; + return r != null ? new Codes.Matrix(r.size, r.size, 4, r.modules) : null; + } + function step(budget as Number) as Boolean { if (_phase == 0) { buildCodewords(); |
