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>
39 This plug-in provides classes to support the simulation of faudes generators. It is organized in
40 a 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>
55 The tutorial simfaudes.cpp demonstrates the use of the ProposingExecutor in a simple
56 interactive simulator for the synchronous product of faudes generators.
57 </p>
58 
59 
60 @section SpLicense License
61 
62 <p>
63 The current implementation of the simulator plugin is a re-design based
64 on Ruediger Berndt's and Christoph Doerr's student projects.
65 It is distributed with libFAUDES and under the terms of the LGPL.
66 </p>
67 <br>
68 <br>
69 <br>
70 
71 
72 <p>
73 Copyright (c) 2008, Thomas Moor.
74 </p>
75 
76 
77 */
78 

libFAUDES 2.33b --- 2025.05.07 --- c++ api documentaion by doxygen