Commit graph

29 commits

Author SHA1 Message Date
051cb31e28 clean-up: re-classify essential RfCs
The RfC documents were written to complement discussions of the Lumiera developers;
yet since the time where ''Ichthyo'' is working basically alone on the project,
this kind of discussions have ceased. During the following years, some ideas
promoted by the existing RfC documents became rather detached from the
actual state of development in the code base.

Many of the existing RfC documents require some commentary to place them
into context, and some of the decisions taken in the early stage of the
project should be **re-assessed**. This includes the decision to reject
some proposals, which initially might have seemed desirable, yet could not
be reconciled with the understanding of the matter and topic in question,
as was gained through the ongoing analysis and development.
2025-10-08 00:48:13 +02:00
217ec447c0 DOC: reorganise time handling pages (use Linkfarm)
Create a new subcategory "design/architecture/time"
and rearrange several pages related to time handling and time codes.

NOTE: starting with this changeset, a ''Link-Farm'' is required for cross-links;
since we don't have an automatic solution for this task yet, I have created
the necessary forwarding pages manually in the website repository.
2025-09-19 19:34:27 +02:00
d888891d84 clean-up: trifles 2025-06-07 23:59:57 +02:00
bc330f0525 MERGE: Join completed GUI developments (closes: #1230)
All preceding integration work (#1014 and #1099) completed.
Ready to start on the [ticket:1221 »Playback Vertical Slice«]...
2023-03-22 23:56:08 +01:00
ed7e3b4b32 ElementBox: extract builder qualifier support as library implementation
Complete the investigation and turn the solution into a generic
mix-in-template, which can be used in flexible ways to support
this qualifier notation.

Moreover, recapitulate requirements for the ElementBoxWidget
2022-08-28 23:36:27 +02:00
b002a5e0b3 DOC: fill in explanations for all subsystems (closes #1145) 2020-02-23 08:21:22 +01:00
4294960940 DOC: complete rewrite of the Application-main documentation
No new information added, rather removed lots of technical details,
which do not belong into design documentation. And try to present
the existing information more comprehensively
2020-02-23 05:28:43 +01:00
d3d7ea35ad Global-Layer-Renaming: fix remaining textual usages and IDs in the code
- most notably the NOBUG logging flags have been renamed now
 - but for the configuration, I'll stick to "GUI" for now,
   since "Stage" would be bewildering for an occasional user
 - in a similar vein, most documentation continues to refer to the GUI
2018-12-10 00:09:56 +01:00
9e951e1eeb Global-Layer-Renaming: adapt lots of documentation 2018-11-15 21:13:52 +01:00
c52d5b640f DOC: settle on names and definition for the three Layers
and write the discussion section for the RfC
2018-11-15 18:28:39 +01:00
03d5600f57 MERGE: recent doc and website improvements 2018-11-12 02:05:42 +01:00
6ce66fc354 Switch to HTTPS: also adjust protocol for the ASCIIDOC generated links 2018-10-26 17:47:18 +02:00
433543a2c7 DOC: some doxygen fixes 2018-09-14 21:06:14 +02:00
21fdce0dfc a better solution to reject out-of-order static access after shutdown
Static initialisation and shutdown can be intricate; but in fact they
work quite precise and deterministic, once you understand the rules
of the game.

In the actual case at hand the ClassLock was already destroyed, and
it must be destroyed at that point, according to the standard. Simply
because it is created on-demand, *after* the initialisation of the
static DependencyFactory, which uses this lock, and so its destructor
must be called befor the dtor of DependencyFactory -- which is precisely
what happens.

So there is no need to establish a special secure "base runtime system",
and this whole idea is ill-guided. I'll thus close ticket #1133 as wontfix

Conflicts:
	src/lib/dependable-base.hpp
2018-04-01 04:52:50 +02:00
d6786870f3 DI: port the old Singleton unit tests
all these tests are ported by drop-in replacement
and should work afterwards exactly as before (and they do indeed)

A minor twist was spotted though (nice to have more unit tests indeed!):
Sometimes we want to pass a custom constructor *not* as modern-style lambda,
but rather as direct function reference, function pointer or even member
function pointer. However, we can not store those types into the closure
for later lazy invocation. This is basically the same twist I run into
yesterday, when modernising the thread-wrapper. And the solution is
similar. Our traits class _Fun<FUN> has a new typedef Functor
with a suitable functor type to be instantiated and copied. In case of
the Lambda this is the (anonymous) lamda class itself, but in case of
a function reference or pointer it is a std::function.
2018-03-26 07:54:16 +02:00
f4195c102a DI: document relation to lifecylce and lifecycle events in general 2018-03-26 02:28:49 +02:00
942bad5d0a DI: document the reworked Singleton / Dependency-Factory
- polish the text in the TiddlyWiki
 - integrate some new pages in the published documentation
   Still mostly placeholder text with some indications
 - fill in the relevant sections in the overview document
 - adjust, expand and update the Doxygen comments

TODO: could convert the TiddlyWiki page to Asciidoc and
      publish it mostly as-is. Especially the nice benchmarks
      from yesterday :-D
2018-03-25 09:33:57 +02:00
12cefe914e release prep: clean-up obsolete information 2015-11-02 21:14:24 +01:00
9c9b31f0f8 DOC: External Tree Description as a design concept
This page gives the rationale for the way our diff framework is built.
This reasoning might *reduce* the relevance of any decisions
regarding the implementation data structure and thus lead to
far reaching consequences for the whole architecture.
2015-11-02 04:50:53 +01:00
d870692f36 DOC: player architecture, language corrected.
No rewrite of sections, only the language was corrected. Only very
little rewriting, although some sections might be rewritten and improved
later.
2013-01-08 02:16:48 +01:00
21d2faff12 DOC: design index page improved and slightly extended
this is the entry point into the section holding the various
design documents -- we try to separatte conceptual/design
from the actual technical documentation
2013-01-08 01:55:31 +01:00
ee4e6905d2 Documentation: integrate the time quantisation concept pages
These pages from the TiddlyWiky feature a complete glossary
of terms relevant for time and timecode handling, plus the
architecural decisions related to this topic
2012-10-10 05:18:46 +02:00
c6f4f9bf25 create pages and sections for the design of output handling and player subsystem
Signed-off-by: Ichthyostega <prg@ichthyostega.de>
2011-05-22 05:45:59 +02:00
3c9c145f7b promote the Engine Interface Overview to draft state 2011-05-11 21:06:25 +02:00
c05c9f6fb3 finish player subsystem design document
Signed-off-by: Ichthyostega <prg@ichthyostega.de>
2011-05-11 03:08:27 +02:00
e12d99c6ff expand on the requiremenst for the player subsystem
Signed-off-by: Ichthyostega <prg@ichthyostega.de>
2011-05-10 02:49:31 +02:00
b83c7dea3b Start collection design elements of the Player subsystem
Signed-off-by: Ichthyostega <prg@ichthyostega.de>
2011-05-08 19:12:35 +02:00
7275720812 fix menu entry 2011-03-31 20:50:33 +02:00
90caeaee6c Create new section for architecture design docs
Signed-off-by: Ichthyostega <prg@ichthyostega.de>
2011-03-28 04:02:27 +02:00