libjmmcg  release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
msm.cpp File Reference
#include "stdafx.h"
#include <boost/test/included/unit_test.hpp>
#include <boost/mpl/list.hpp>
#include "core/msm.hpp"
Include dependency graph for msm.cpp:

Go to the source code of this file.

Classes

struct  data< LT >
 
struct  data_with_payload< DestMsgsT >
 
struct  noop_driver< MSMT >
 
struct  noop_driver< MSMT >::fn_event
 
struct  noop_driver< MSMT >::state_machine_t
 
struct  assign_driver_states< MSMT >
 
struct  assign_driver_states< MSMT >::fn_event
 
struct  assign_driver_states< MSMT >::state_machine_t
 
struct  assign_driver< MSMT >
 
struct  assign_driver< MSMT >::assign_event
 
struct  assign_driver< MSMT >::is_true
 
struct  assign_driver< MSMT >::state_machine_t
 

Macros

#define BOOST_TEST_MODULE   libjmmcg_tests
 

Typedefs

using msm_types = boost::mpl::list< msm::unroll, msm::jump_table >
 

Enumerations

enum class  states {
  start , assign , assign1 , assign2 ,
  assign3 , assign4 , assign5 , assign6 ,
  assign7 , assign8 , assign9 , end ,
  unknown , start , middle , middle1 ,
  end , unknown , start , assign ,
  assign1 , assign2 , assign3 , assign4 ,
  assign5 , assign6 , assign7 , assign8 ,
  assign9 , end , unknown , start ,
  middle , middle1 , end , unknown
}
 
enum class  end_states {
  start =10 , middle , middle1 , end ,
  unknown , start =10 , middle , middle1 ,
  end , unknown
}
 
enum class  states {
  start , assign , assign1 , assign2 ,
  assign3 , assign4 , assign5 , assign6 ,
  assign7 , assign8 , assign9 , end ,
  unknown , start , middle , middle1 ,
  end , unknown , start , assign ,
  assign1 , assign2 , assign3 , assign4 ,
  assign5 , assign6 , assign7 , assign8 ,
  assign9 , end , unknown , start ,
  middle , middle1 , end , unknown
}
 
enum class  end_states {
  start =10 , middle , middle1 , end ,
  unknown , start =10 , middle , middle1 ,
  end , unknown
}
 

Functions

std::ostream & operator<< (std::ostream &os, states const s) noexcept(false)
 
std::ostream & operator<< (std::ostream &os, end_states const s) noexcept(false)
 
 BOOST_AUTO_TEST_CASE_TEMPLATE (noop_driver_ctor, msm_type, msm_types)
 
 BOOST_AUTO_TEST_CASE_TEMPLATE (start_state_noop_driver, msm_type, msm_types)
 
 BOOST_AUTO_TEST_CASE_TEMPLATE (assign_driver_states_ctor, msm_type, msm_types)
 
 BOOST_AUTO_TEST_CASE_TEMPLATE (start_state_assign_driver_states, msm_type, msm_types)
 
 BOOST_AUTO_TEST_CASE_TEMPLATE (assign_driver_ctor, msm_type, msm_types)
 
 BOOST_AUTO_TEST_CASE_TEMPLATE (start_state_assign_event, msm_type, msm_types)
 

Macro Definition Documentation

◆ BOOST_TEST_MODULE

#define BOOST_TEST_MODULE   libjmmcg_tests

Definition at line 21 of file msm.cpp.

Typedef Documentation

◆ msm_types

typedef boost::mpl::list< msm::unroll, msm::jump_table > msm_types

Definition at line 67 of file msm.cpp.

Enumeration Type Documentation

◆ end_states [1/2]

enum class end_states
strong
Enumerator
start 
middle 
middle1 
end 
unknown 
start 
middle 
middle1 
end 
unknown 

Definition at line 44 of file msm.cpp.

◆ end_states [2/2]

enum class end_states
strong
Enumerator
start 
middle 
middle1 
end 
unknown 
start 
middle 
middle1 
end 
unknown 

Definition at line 44 of file msm.cpp.

◆ states [1/2]

enum class states
strong
Enumerator
start 
assign 
assign1 
assign2 
assign3 
assign4 
assign5 
assign6 
assign7 
assign8 
assign9 
end 
unknown 
start 
middle 
middle1 
end 
unknown 
start 
assign 
assign1 
assign2 
assign3 
assign4 
assign5 
assign6 
assign7 
assign8 
assign9 
end 
unknown 
start 
middle 
middle1 
end 
unknown 

Definition at line 30 of file msm.cpp.

◆ states [2/2]

enum class states
strong
Enumerator
start 
assign 
assign1 
assign2 
assign3 
assign4 
assign5 
assign6 
assign7 
assign8 
assign9 
end 
unknown 
start 
middle 
middle1 
end 
unknown 
start 
assign 
assign1 
assign2 
assign3 
assign4 
assign5 
assign6 
assign7 
assign8 
assign9 
end 
unknown 
start 
middle 
middle1 
end 
unknown 

Definition at line 30 of file msm.cpp.

Function Documentation

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [1/6]

BOOST_AUTO_TEST_CASE_TEMPLATE ( assign_driver_ctor  ,
msm_type  ,
msm_types   
)

Definition at line 219 of file msm.cpp.

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [2/6]

BOOST_AUTO_TEST_CASE_TEMPLATE ( assign_driver_states_ctor  ,
msm_type  ,
msm_types   
)

Definition at line 204 of file msm.cpp.

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [3/6]

BOOST_AUTO_TEST_CASE_TEMPLATE ( noop_driver_ctor  ,
msm_type  ,
msm_types   
)

Definition at line 195 of file msm.cpp.

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [4/6]

BOOST_AUTO_TEST_CASE_TEMPLATE ( start_state_assign_driver_states  ,
msm_type  ,
msm_types   
)

Definition at line 208 of file msm.cpp.

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [5/6]

BOOST_AUTO_TEST_CASE_TEMPLATE ( start_state_assign_event  ,
msm_type  ,
msm_types   
)

Definition at line 223 of file msm.cpp.

◆ BOOST_AUTO_TEST_CASE_TEMPLATE() [6/6]

BOOST_AUTO_TEST_CASE_TEMPLATE ( start_state_noop_driver  ,
msm_type  ,
msm_types   
)

Definition at line 199 of file msm.cpp.

◆ operator<<() [1/2]

std::ostream & operator<< ( std::ostream &  os,
end_states const  s 
)
noexcept

Definition at line 52 of file msm.cpp.

◆ operator<<() [2/2]

std::ostream& operator<< ( std::ostream &  os,
states const  s 
)
noexcept

Definition at line 38 of file msm.cpp.