Commit Graph

7 Commits

Author SHA1 Message Date
Jean Sirmai 4d97b5328e
src/fsm/control.c fsm_init() and fsm_close() can be now triggered from main().
These two functions (defined in control.c) initiate the log and print it just
before the end of the program.
It is now possible to send messages that reports the events occuring during a
session: the creation of the log, then of the application and their closure in
the reverse order.
As previously,there is no g signal connect (activate) and no window is created.
This triggers the same error message in the console.
What is new, in this commit, is that a first log is printed in the console.
2024-11-09 08:03:55 +01:00
Jean Sirmai 4ce6443e39
/src/fsm/log/* adds the three files:
- manager.c,
- oper.c and
- appendix.c

and the functions needed to init, edit and publish the log.

fsm_add_log() is in manager.c  There are the filters.

init(), add(), publish() are in oper.c
                   These are the executive functions.

and functions whose usefulness remains to be demonstrated
are in appendix.

In fsm.h remain the structures (fsm_log_struct, fsm_log_struct_unit)
and the two enums (severity and source)
2024-11-08 19:56:07 +01:00
Jean Sirmai 56b539e9c0
include/fsm.h: prepares the building of a log and create src/readme.doc
This commit is the first in a series that will make the fsm apt to build the
log.

The log (or journal) records events chronologically from the start to the end
of the programme.
Its quantitatively most important part is to report on the execution of the
session.

The log will be created from the fsm (finite state machine) which describes
all the possible states of the Gem-graph client and all the transitions between
them.

The fsm header is introduced in this commit.

It lists the structures, functions and tools that the log will need and details
the presentation of events in the log
[date - rank - source file - source function - value].

The src/readme.docs file provides an initial overview of the missions and their
distribution in the code files.
2024-11-08 12:27:38 +01:00
Jean Sirmai 6ad04de2c6
docs/*: integrate doxygen, create a documentation zone, adds notes
We wanted to have an automated documentation for our project. We choose doxygen
since this is a well-established project, with common standards.

To generate the documentation, simply type `make docs` and open `docs/html/index.html`.

The documentation zone actually contains:
	- archives: several files from past of the projects, historical purpose
	- GTK-docs: ressources on GTK internals and API
	- rtfm: first draft of a user manual
	- showcase: some pictures of the UI example, that were communicated on the Gem-graph discussion room (XMPP)
	- html: doxygen-generated docs
2024-11-01 23:54:43 +01:00
Jean Sirmai a3c71ba65f
scripts/*: add a script that can list every function name 2024-11-01 23:54:39 +01:00
Adrien Bourmault d74e590199
Makefile: fixes and parallel by default
This commit:
- fixes the OpenGL lib configurations (gl->epoxy)
- added an exclusion for bin/ and build/ in .gitignore
- make the Makefile parallel
2024-11-01 23:54:29 +01:00
Jean Sirmai a31005c2f9
src/*, simple Gtk application
This commit initiates the Gem-graph client development with a simple
main function that initializes a Gtk application (no window yet).
2024-11-01 23:53:24 +01:00