23 #ifndef INCLUDED_TRELLIS_FSM_H 24 #define INCLUDED_TRELLIS_FSM_H 58 std::vector<int> d_NS;
62 std::vector<int> d_OS;
65 std::vector<std::vector<int>> d_PS;
71 std::vector<std::vector<int>> d_PI;
76 std::vector<int> d_TMl;
80 std::vector<int> d_TMi;
81 void generate_PS_PI();
108 fsm(
int I,
int S,
int O,
const std::vector<int>& NS,
const std::vector<int>& OS);
116 fsm(
const char* name);
127 fsm(
int k,
int n,
const std::vector<int>& G);
136 fsm(
int mod_size,
int ch_length);
149 fsm(
int P,
int M,
int L);
167 fsm(
const fsm& FSMo,
const fsm& FSMi,
bool serial);
176 fsm(
const fsm& FSM,
int n);
177 int I()
const {
return d_I; }
178 int S()
const {
return d_S; }
179 int O()
const {
return d_O; }
180 const std::vector<int>&
NS()
const {
return d_NS; }
181 const std::vector<int>&
OS()
const {
return d_OS; }
182 const std::vector<std::vector<int>>&
PS()
const {
return d_PS; }
183 const std::vector<std::vector<int>>&
PI()
const {
return d_PI; }
184 const std::vector<int>&
TMi()
const {
return d_TMi; }
185 const std::vector<int>&
TMl()
const {
return d_TMl; }
193 void write_trellis_svg(std::string filename,
int number_stages);
200 void write_fsm_txt(std::string filename);
const std::vector< int > & NS() const
Definition: fsm.h:180
const std::vector< int > & TMl() const
Definition: fsm.h:185
const std::vector< std::vector< int > > & PS() const
Definition: fsm.h:182
int O() const
Definition: fsm.h:179
const std::vector< std::vector< int > > & PI() const
Definition: fsm.h:183
const std::vector< int > & OS() const
Definition: fsm.h:181
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition: basic_block.h:46
#define TRELLIS_API
Definition: gr-trellis/include/gnuradio/trellis/api.h:30
int S() const
Definition: fsm.h:178
Finite State Machine Specification class.
Definition: fsm.h:44
int I() const
Definition: fsm.h:177
const std::vector< int > & TMi() const
Definition: fsm.h:184
#define S(x)
Definition: rpcserver_thrift.h:37