sp_include.h
Go to the documentation of this file.
1/** @file sp_include.h Includes all simulator plugin headers */
2
3/*
4 ****************************************************
5 Convenience header file that includes all headers
6 relevant to the simulator plugin.
7
8 (c) Thomas Moor 2008
9 ****************************************************
10 */
11
12
13#ifndef FAUDES_SP_INCLUDE_H
14#define FAUDES_SP_INCLUDE_H
15
16#include "sp_random.h"
17#include "sp_densityfnct.h"
18#include "sp_executor.h"
19#include "sp_pexecutor.h"
20#include "sp_lpexecutor.h"
21#include "sp_plpexecutor.h"
22#include "sp_dplpexecutor.h"
23#include "sp_simeventset.h"
24#include "sp_simconditionset.h"
25
26#endif
27
28
29
30/**
31
32@defgroup SimulatorPlugin Simulator Plug-In
33
34
35@ingroup AllPlugins
36
37
38<p>
39This plug-in provides classes to support the simulation of faudes generators. It is organized in
40a hierarchical fashion to introduce the following features:
41</p>
42
43- the faudes::Executor is a timed generator that tracks its current state and indicates
44 which events are currently enabled and/or how much time may pass
45- the faudes::ParallelExecutor is a vector of Executors with synchronized shared events
46 and provides the same interface as the Executor regarding enabled events
47- the faudes::LoggingExecutor is a ParallelExecutor that logs state and event
48 data for statistical analysis
49- the faudes::ProposingExecutor is a LoggingExecutor that proposes which event to
50 execute based on stochastic event properties or priorities
51- the faudes::DeviceExecutor is a ProposingExecutor that synchronizes with physical time
52 and invokes callbacks for hardware-in-the-loop simulation (IO Device plugin required)
53
54<p>
55The tutorial simfaudes.cpp demonstrates the use of the ProposingExecutor in a simple
56interactive simulator for the synchronous product of faudes generators.
57</p>
58
59
60@subsection SpLicense License
61
62<p>
63The current implementation of the simulator plugin is a re-design based
64on Ruediger Berndt's and Christoph Doerr's student projects.
65It is distributed with libFAUDES and under the terms of the LGPL.
66</p>
67<br>
68
69
70<p>
71Copyright (c) 2008, Thomas Moor.
72</p>
73
74
75*/
76

libFAUDES 2.33k --- 2025.09.16 --- c++ api documentaion by doxygen