From 9f4843d686bca0d75bee174d8249fbf72527b94a Mon Sep 17 00:00:00 2001
From: Leo Uino <leo@norisys.jp>
Date: Thu, 14 Jul 2011 14:31:07 +0900
Subject: Move RS block size calculation to a separate function

---
 lpg/libqr/qr/common.h | 11 +++++++++++
 1 file changed, 11 insertions(+)

(limited to 'lpg/libqr/qr')

diff --git a/lpg/libqr/qr/common.h b/lpg/libqr/qr/common.h
index 9caf3e0..f2bd127 100644
--- a/lpg/libqr/qr/common.h
+++ b/lpg/libqr/qr/common.h
@@ -10,5 +10,16 @@ size_t qr_code_total_capacity(int version);
 
 int qr_code_width(const struct qr_code *);
 
+/* See table 19 of the spec for the layout of EC data. There are at
+ * most two different block lengths, so the total number of data+ec
+ * blocks is the sum of block_count[]. The total number of 8-bit
+ * words in each kind of block is data_length + ec_length.
+ */
+void qr_get_rs_block_sizes(int version,
+                           enum qr_ec_level ec,
+                           int block_count[2],
+                           int data_length[2],
+                           int ec_length[2]);
+
 #endif
 
-- 
cgit v1.2.3-70-g09d2