libjmmcg
release_579_6_g8cffd
A C++ library containing an eclectic mix of useful, advanced components.
|
#include "stdafx.h"
#include <boost/test/included/unit_test.hpp>
#include <boost/mpl/size.hpp>
#include "core/msm.hpp"
#include "core/ave_deviation_meter.hpp"
#include "core/stats_output.hpp"
#include <chrono>
#include <random>
Go to the source code of this file.
Classes | |
struct | data< LT > |
struct | assign_event |
struct | assign_event1 |
struct | assign_event2 |
struct | assign_event3 |
struct | assign_event4 |
struct | assign_event5 |
struct | assign_event6 |
struct | assign_event7 |
struct | assign_event8 |
struct | assign_event9 |
struct | unroll |
struct | unroll::state_machine_t |
struct | jump_table |
struct | jump_table::state_machine_t |
struct | computed_goto |
struct | computed_goto::state_machine_t |
struct | hash |
struct | hash::state_machine_t |
Macros | |
#define | BOOST_TEST_MODULE libjmmcg_tests |
Typedefs | |
using | timed_results_t = ave_deviation_meter< unsigned long long > |
using | state_machines_t = boost::mpl::list< unroll::machine, jump_table::machine > |
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 | 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 } |
Functions | |
std::mt19937_64 | gen (42) |
std::ostream & | operator<< (std::ostream &os, states const s) noexcept(false) |
BOOST_AUTO_TEST_CASE_TEMPLATE (state_changes, state_machine_t, state_machines_t) | |
Variables | |
std::uniform_int_distribution< unsigned > | distribution |
auto | generator =std::bind(distribution, gen) |
#define BOOST_TEST_MODULE libjmmcg_tests |
Definition at line 21 of file msm_performance.cpp.
typedef boost::mpl::list< unroll::machine, jump_table::machine > state_machines_t |
Definition at line 259 of file msm_performance.cpp.
using timed_results_t = ave_deviation_meter<unsigned long long> |
Definition at line 35 of file msm_performance.cpp.
|
strong |
Definition at line 44 of file msm_performance.cpp.
|
strong |
Definition at line 44 of file msm_performance.cpp.
BOOST_AUTO_TEST_CASE_TEMPLATE | ( | state_changes | , |
state_machine_t | , | ||
state_machines_t | |||
) |
Definition at line 275 of file msm_performance.cpp.
std::mt19937_64 gen | ( | 42 | ) |
Try to ensure that the events are sufficiently complex to baffle the optimizer.
|
noexcept |
Definition at line 60 of file msm_performance.cpp.
std::uniform_int_distribution< unsigned > distribution |
Definition at line 41 of file msm_performance.cpp.
auto generator =std::bind(distribution, gen) |
Definition at line 42 of file msm_performance.cpp.