summaryrefslogtreecommitdiff
path: root/gr-fec/lib/generic_encoder.cc
diff options
context:
space:
mode:
authorTom Rondeau <tom@trondeau.com>2014-05-04 14:24:50 -0400
committerTom Rondeau <tom@trondeau.com>2014-05-17 17:45:14 -0400
commit9a4494904c77c8516c90f2c2a18518065fe36375 (patch)
treea9981632abad78e00c196e8305105fcaf5019ba4 /gr-fec/lib/generic_encoder.cc
parentfb1d5f822e3a273db88b2087b8d53be67725d232 (diff)
fec: updating puncturing, adding documentation, adding CCSDS encoder.
Diffstat (limited to 'gr-fec/lib/generic_encoder.cc')
-rw-r--r--gr-fec/lib/generic_encoder.cc70
1 files changed, 70 insertions, 0 deletions
diff --git a/gr-fec/lib/generic_encoder.cc b/gr-fec/lib/generic_encoder.cc
index 9402b660bf..934d193e7f 100644
--- a/gr-fec/lib/generic_encoder.cc
+++ b/gr-fec/lib/generic_encoder.cc
@@ -25,15 +25,73 @@
#endif
#include <gnuradio/fec/generic_encoder.h>
+#include <gnuradio/prefs.h>
#include <stdio.h>
namespace gr {
namespace fec {
+ generic_encoder::generic_encoder(std::string name)
+ {
+ d_name = name;
+ my_id = base_unique_id++;
+
+#ifdef ENABLE_GR_LOG
+#ifdef HAVE_LOG4CPP
+ prefs *p = prefs::singleton();
+ std::string config_file = p->get_string("LOG", "log_config", "");
+ std::string log_level = p->get_string("LOG", "log_level", "off");
+ std::string log_file = p->get_string("LOG", "log_file", "");
+
+ GR_CONFIG_LOGGER(config_file);
+
+ GR_LOG_GETLOGGER(LOG, "gr_log." + alias());
+ GR_LOG_SET_LEVEL(LOG, log_level);
+ if(log_file.size() > 0) {
+ if(log_file == "stdout") {
+ GR_LOG_ADD_CONSOLE_APPENDER(LOG, "cout","gr::log :%p: %c{1} - %m%n");
+ }
+ else if(log_file == "stderr") {
+ GR_LOG_ADD_CONSOLE_APPENDER(LOG, "cerr","gr::log :%p: %c{1} - %m%n");
+ }
+ else {
+ GR_LOG_ADD_FILE_APPENDER(LOG, log_file , true,"%r :%p: %c{1} - %m%n");
+ }
+ }
+ d_logger = LOG;
+
+#endif /* HAVE_LOG4CPP */
+#else /* ENABLE_GR_LOG */
+ d_logger = NULL;
+#endif /* ENABLE_GR_LOG */
+ }
+
generic_encoder::~generic_encoder()
{
}
+ const char*
+ generic_encoder::get_input_conversion()
+ {
+ return "none";
+ }
+
+ const char*
+ generic_encoder::get_output_conversion()
+ {
+ return "none";
+ }
+
+ int generic_encoder::base_unique_id = 1;
+ int
+ generic_encoder::unique_id()
+ {
+ return my_id;
+ }
+
+ /*******************************************************
+ * Static functions
+ ******************************************************/
int
get_encoder_output_size(generic_encoder::sptr my_encoder)
{
@@ -46,5 +104,17 @@ namespace gr {
return my_encoder->get_input_size();
}
+ const char*
+ get_encoder_input_conversion(generic_encoder::sptr my_encoder)
+ {
+ return my_encoder->get_input_conversion();
+ }
+
+ const char*
+ get_encoder_output_conversion(generic_encoder::sptr my_encoder)
+ {
+ return my_encoder->get_output_conversion();
+ }
+
} /* namespace fec */
} /* namespace gr */