From 9a4494904c77c8516c90f2c2a18518065fe36375 Mon Sep 17 00:00:00 2001
From: Tom Rondeau <tom@trondeau.com>
Date: Sun, 4 May 2014 14:24:50 -0400
Subject: fec: updating puncturing, adding documentation, adding CCSDS encoder.

---
 gr-fec/lib/cc_encoder_impl.h | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

(limited to 'gr-fec/lib/cc_encoder_impl.h')

diff --git a/gr-fec/lib/cc_encoder_impl.h b/gr-fec/lib/cc_encoder_impl.h
index e7a17bd358..008887559b 100644
--- a/gr-fec/lib/cc_encoder_impl.h
+++ b/gr-fec/lib/cc_encoder_impl.h
@@ -14,7 +14,7 @@
  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  * GNU General Public License for more details.
  *
- * You should have received a copy of the GNU General Public License
+p * You should have received a copy of the GNU General Public License
  * along with GNU Radio; see the file COPYING.  If not, write to
  * the Free Software Foundation, Inc., 51 Franklin Street,
  * Boston, MA 02110-1301, USA.
@@ -35,13 +35,14 @@ namespace gr {
       {
       private:
         //plug into the generic fec api
-        void generic_work(void *inBuffer, void *outbuffer);
+        void generic_work(void *inbuffer, void *outbuffer);
         int get_output_size();
         int get_input_size();
 
         //everything else...
         unsigned char Partab[256];
-        unsigned int d_framebits;
+        unsigned int d_frame_size;
+        unsigned int d_max_frame_size;
         unsigned int d_rate;
         unsigned int d_k;
         std::vector<int> d_polys;
@@ -49,21 +50,21 @@ namespace gr {
         int d_numstates;
         int d_decision_t_size;
         int d_start_state;
-        bool d_tailbiting;
-        bool d_terminated;
-        bool d_truncated;
-        bool d_streaming;
+        cc_mode_t d_mode;
+        int d_output_size;
+
         int parity(int x);
         int parityb(unsigned char x);
         void partab_init(void);
 
       public:
-        cc_encoder_impl(int framebits, int k,
-                        int rate, std::vector<int> polys,
-                        int start_state = 0, int end_state = 0,
-                        bool tailbiting = false, bool terminated = false,
-                        bool truncated = false, bool streaming = true);
+        cc_encoder_impl(int frame_size, int k, int rate,
+                        std::vector<int> polys, int start_state = 0,
+                        cc_mode_t mode=CC_STREAMING);
         ~cc_encoder_impl();
+
+        bool set_frame_size(unsigned int frame_size);
+        double rate();
       };
 
     } /* namespace code */
-- 
cgit v1.2.3