diff options
author | Harald Welte <laforge@gnumonks.org> | 2011-08-17 12:46:48 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2011-08-17 17:14:11 +0200 |
commit | ba6988bd893eb08c54ffdb144700530e3a683d6e (patch) | |
tree | 0ae180c7c7bd072c5e11b32e2dc1f2200dea8f34 /include/osmocom/core/conv.h | |
parent | 03bba4313f9e6f880ec5cadcb66a0df9663349b9 (diff) |
some more doxygen work (include the notion of modules)
Diffstat (limited to 'include/osmocom/core/conv.h')
-rw-r--r-- | include/osmocom/core/conv.h | 36 |
1 files changed, 25 insertions, 11 deletions
diff --git a/include/osmocom/core/conv.h b/include/osmocom/core/conv.h index af676eed..db3058cd 100644 --- a/include/osmocom/core/conv.h +++ b/include/osmocom/core/conv.h @@ -20,6 +20,14 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ +/*! \defgroup conv Convolutional encoding and decoding routines + * @{ + */ + +/*! \file conv.h + * \file Osmocom convolutional encoder and decoder + */ + #ifndef __OSMO_CONV_H__ #define __OSMO_CONV_H__ @@ -27,6 +35,7 @@ #include <osmocom/core/bits.h> +/*! \brief structure describing a given convolutional code */ struct osmo_conv_code { int N; int K; @@ -45,11 +54,12 @@ struct osmo_conv_code { /* Encoding */ /* Low level API */ +/*! \brief convolutional encoder state */ struct osmo_conv_encoder { - const struct osmo_conv_code *code; - int i_idx; /* Next input bit index */ - int p_idx; /* Current puncture index */ - uint8_t state; /* Current state */ + const struct osmo_conv_code *code; /*!< \brief for which code? */ + int i_idx; /*!< \brief Next input bit index */ + int p_idx; /*!< \brief Current puncture index */ + uint8_t state; /*!< \brief Current state */ }; void osmo_conv_encode_init(struct osmo_conv_encoder *encoder, @@ -66,19 +76,21 @@ int osmo_conv_encode(const struct osmo_conv_code *code, /* Decoding */ /* Low level API */ +/*! \brief convolutional decoder state */ struct osmo_conv_decoder { + /*! \brief description of convolutional code */ const struct osmo_conv_code *code; - int n_states; + int n_states; /*!< \brief number of states */ - int len; /* Max o_idx (excl. termination) */ + int len; /*!< \brief Max o_idx (excl. termination) */ - int o_idx; /* output index */ - int p_idx; /* puncture index */ + int o_idx; /*!< \brief output index */ + int p_idx; /*!< \brief puncture index */ - unsigned int *ae; /* accumulater error */ - unsigned int *ae_next; /* next accumulated error (tmp in scan) */ - uint8_t *state_history; /* state history [len][n_states] */ + unsigned int *ae; /*!< \brief accumulater error */ + unsigned int *ae_next; /*!< \brief next accumulated error (tmp in scan) */ + uint8_t *state_history; /*!< \brief state history [len][n_states] */ }; void osmo_conv_decode_init(struct osmo_conv_decoder *decoder, @@ -98,4 +110,6 @@ int osmo_conv_decode(const struct osmo_conv_code *code, const sbit_t *input, ubit_t *output); +/*! }@ */ + #endif /* __OSMO_CONV_H__ */ |