-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTODO.txt
More file actions
61 lines (49 loc) · 2.5 KB
/
TODO.txt
File metadata and controls
61 lines (49 loc) · 2.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
BUGS:
*- es_rod_position_server:params/0 has some parameters removed (parameters which return strings)
Protocol:
*- assemble by hand a list of messages which es_interface_server can send to other servers
*0 es_interface_server should do es_lib:collect_parameters(SimId, all) and then answer to {get, Id} messages
#0 es_makeup_buffer_server {action, _, [RCS, VADD]} transform to {action, _, VADD} - beware of deadlock with es_core_server
%+ more restrictive packet definition regexp in es_lib_tcp, with error recovery
*- change snapshot loading in es_config_server.erl from gen_server:call({global, {SimId, Server}}, {set, Parm, Val}) to Module:Fun(SimId, Val)
Cleanup:
move es_connection_server:start_new_simulator/1 to es_connection_server:call/2
move gen_server:cast(Child, {listen}) from es_interface_dispatcher:start_child(SimId, User) to es_interface_server:init/1
General features:
*+ CVCS: boration/dilution control (makeup counters, selector switch, start/stop switch)
*- es_clock_server:send_tick/2 should use gen_server:cast instead of gen_server:call
*- sanity check when egon_server starts (egon_client:client_test/0 could be a good sanity check)
#0 changing simulation speed
#- add logging to configuration file
#0 use gen_fsm and gen_event where applicable
Userfriendlyness:
#0 generating client-server protocol from documentation (list all handle_call methods which have some modifier in it's documentation)
Reorganisation:
* split egon_server into several applications:
** egon_client application
** egon_model: application which represents a model of a NPP
** egon_interface: application which gives egon_model a TCP interface
** egon_simulator: application which pairs egon_model and egon_interface (for single-user version of EGON)
** egon_server: application which handles multiple instances of egon_simulator (for multiple user version of EGON)
Releasing:
%+ es_releasing:generate_release/0 should remove erl.ini, install.bat should generate new erl.ini
Removing dirty hacks:
%0 remove timer:sleep from egon_server:sim_loaded
%0 move io:format to error_handler:info_report
#0 integrate ramper into turbine
%- change calls to es_clock_server:add_listener/2 to es_clock_server:add_listener/1
%+ remove es_interface_server:handle_call({listen})
MAJOR FEATURES ROADMAP:
1) steam generators
2) RCS inventory, PRZR level
3) trip setpoints (OTdT, OPdT)
4) subcritical multiplication
LEGEND:
Importance:
* - high
% - medium
# - low
Complexity:
+ - high
0 - medium
- - low