Commit graph

874 commits

Author SHA1 Message Date
6ecd24a0a0 Design: pick up the task of defining a Tree Diff Language 2015-10-02 02:49:15 +02:00
0d10e62851 WIP: draft a monad-like scope expanding iterator implementation
Initially I intended just to supply an addapter to use
the monadic IterExplorer for this recursive expansion
of GenNode contents. Investigating this approach was
relevant to highlight the minimum requirements for
such an evaluation mechanics: since our GenNode
is an hierarchical structure without back-links,
we are bound to use a stack at some point. And
since an Iterator is a materialised continuation,
we can not use the processor stack and are forced
to represent this stack in memory.

Yet, on second thought, we do not need the full power
of the IterExplorer monad; especially we do not need
to bind arbitrary functions into the monad, just one
single scope exploring function, implemented as
Variant visitor. Based on these observations, we can
"inline" the monad structure into a double nested
iterator, where the outer capsule carries a stack
of scopes to be explored.
2015-09-11 04:06:51 +02:00
be70e58441 considering how to implement the GenNode sequence iteration
remembered that some years ago I had to deal with a very similar problem
for planning the frame rendering jobs. It turned out, that the
iterator monad developed for this looks promising for our task at hand
2015-08-31 03:34:23 +02:00
aa96cb6dd1 implement full data-based equality for GenNode
initially my intention was to use the ID for equality test.
But on a second thought, this seemed like a bad idea, since
it confuses the concepts of equality and identity.

Note: at the moment, I do not know if we even need an equality test,
so it is provided here rather for sake of completeness. And this
means even more that we want an 'equality' implementation that
does what one would naively expect: compare the object identity
*and* compare the contents.
2015-08-28 16:12:04 +02:00
a56226f297 Record "object" representation now finished and passes Test 2015-08-17 22:13:36 +02:00
7650b36f1e Generic Record: finish implementation of Mutator
especially setting (changing) attributes turned out to be tricky,
since in case of a GenNode this would mean to re-bind the hash ID;
we can not possibly do that properly without knowing the type of the payload,
and by design this payload type is opaque (erased).

As resort, I changed the semantics of the assign operation:
now it rather builds a new payload element, with a given initialiser.
In case of the strings, this ends up being the same operation,
while in case of GenNode, this is now something entirely different:
we can now build a new GenNode "in place" of the old one, and both
will have the same symbolic ID (attribute key). Incidentally,
our Variant implementation will reject such a re-building operatinon
when this means to change the (opaque) payload type.

in addition, I created a new API function on the Mutator,
allowing to move-in a complete attribute object. Actually this
new function became the working implementation. This way, it is
still possible to emplace a new attribute efficiently (consider
this to be a whole object graph!). But only, if the key (ID)
embedded in the attribute object is already what is the intended
key for this attribute. This way, we elegantly circumvent the
problem of having to re-bind a hash ID without knowing the type seed
2015-08-17 20:31:07 +02:00
61b6868bff pick up work where I left one month ago
OMG, what was all this about?
OK... this cant possibly work this way.
At least we need to trim after splitting the attributes.
But this is not enough, we want the value, which implies
to make the type flexible (since we cant return a const& to
a substring extracted on-the-fly)
2015-08-17 01:22:01 +02:00
24d7f55935 Merge Platform upgrade and Diff-Framework development 2015-08-16 01:42:26 +02:00
430107fcd8 draft impl of Record<string>
this specialisation of the Record template is provided as
default implementation for simple unit tests
2015-08-16 01:35:31 +02:00
bfb7bbd2f5 implement Record: operator string() for diagnostics 2015-08-16 01:35:30 +02:00
5b0d58518e WIP: stub GenNode ref 2015-08-16 01:35:30 +02:00
d92878876a WIP: attempt to define the object builder invocation chain
TODO still unresolved issues with the bootstrap.
Looks like we shall not initiate from the basic Rec(),
but reather require an explicit construction.
2015-08-16 01:35:30 +02:00
8e990fc04d WIP: simple implementation / stubbing
especially I've now decided how to handle const-ness:
We're open to all forms of const-ness, the actual usage decides.
const GenNode will only expose a const& to the data values

still TODO is the object builder notation for diff::Record
2015-08-16 01:35:30 +02:00
1fa7a4a437 WIP: define the full set of default copy operations explicitly
on a second thought, this "workaround" does not look so bad,
due to the C++11 feature to request the default implementation explicitly.
Maybe we'll never need a generic solution for these cases
2015-08-16 01:35:30 +02:00
f15266e435 GenNode(#956): define the ctors
implies decision on the ID representation
2015-08-16 01:35:30 +02:00
7ea4f739bd introduce a new header for #984 2015-08-16 01:35:29 +02:00
248fbef9b4 WIP: draft a DSL for simplified definition of literal records
This is just a draft for now -- kindof a by-catch, since it is
chep to build that DSL on top of the Rec::Mutator.
This DSL could be of value later, when it comes to define
some configuration data inline, in a copact and clear fashion,
without the need to use a bridge to/from JSON
2015-08-16 01:35:29 +02:00
b81419ad63 WIP: decide to implement the record ref as simple referenc wrapper 2015-08-16 01:35:29 +02:00
c70ad01ad3 resolve some conflicts in the design of the "External Tree Representation"
for the purpose of working out the inner logic, I frequently use the
help of a mindmap -- so why not commiting this alongside? For sure,
it is preliminary and the worked out concepts will be cast in code
and documented on the website. Yet the thought-process leading to
these decisions might be of some interest, at least for myself.
2015-08-16 01:35:29 +02:00
8e27416594 planning towards a tree diff language
before engaging into the implementation of lib::Record,
I prefer to conduct a round of planning, to get a clearer
view about the requirements we'll meet when extending
our existing list diff to tree structures
2015-08-16 01:35:29 +02:00
b91734b0a6 WIP: first draft -- properties of an external symbolic record type
This Record type is intended to play a role in the
diff description / exchange of GUI data structures.
2015-08-16 01:35:28 +02:00
ff0950fd3b DOC: a note regarding Lumiera Forward Iterators and the range-for loop 2015-08-16 01:35:28 +02:00
e40c85fd7b DOK: rename Track -> Fork (III) -- closes #155
Introduce the new term "Fork" at various relevant places
within the documentation. We do not entirely purge the
term "track" though; rather we

- make clear that "Fork" is the entity to build tracks
- use "fork" also synonymous to the "tree of tracks"
2015-05-31 03:46:05 +02:00
07822182d9 player: planning play proces memory management 2015-05-30 17:52:44 +02:00
dece405801 LANDING: transition to GTK-3
This switches the Lumiera UI from GTK-2 to GTK-3
Unfortunately, this move breaks two crucial features, which have been
disabled for now: the display of video and our custom timeline widget.

Since both of these require some reworking, which in fact has already
started, we prefer to do the library and framework switch right away.
2015-05-30 17:11:41 +02:00
75aa5c970e summarise my thoughts regarding the 'External Tree Description'
seems like a new concept, closely related to the 'systematic metadata' RfC
2015-05-26 16:17:00 +02:00
6de24bc7f0 Ticket #956: decide layout and handling of GenNode elements
to carry out that rather obvious step, I was bound to consider
all the implications of choosing a given layout and handling pattern
for our external structure representation.

Finally, I settled upon the following decisions
- the value space represented within the DataCap is flat, not further structured
- the distinction between "attribute" and "nested object" is merely conceptual
  and will be enforced solely by the diff detection / representation protocol
- basically, a nested subtree may appear as an attribute; the difference
  between attributes and children lies solely in the way of access and referral:
  by-name vs. positional
- it is pointless to save space for the representation of the discriminator ID
- but we can omit any further explicit type tag, because
- we do *not* support programming by switch-on-type, and thus
- we do *not* support full introspection, only a passive type-safety check
- this is *not* a limitation, since we acknowledge that GenNode is a *Monad*
- and the partial function needed within any flatMap implementation
  maps naturally onto our Variant-Visitor; thus
- the DataCap can basically just *be* a Variant
- and GenNode has just to supply the neccessary shaffolding
  to turn that into a full fledged Monad implementation, including
  direct construction by wrapping a value and flatMap with tree walk
2015-05-02 01:11:39 +02:00
Christoph Varga
f952cad073 Lumiera GUI thoughts -- Mindmap to complement the Interface concept PDF
This mindmap explains some of the ideas and concepts in more detail.
It can be viewed with the "freeplane" mind mapping software.
("freemind" works as well, but will mess up some of the formatting)
2015-04-26 23:22:42 +02:00
Christoph Varga
05e5ab95a3 Lumiera GUI thoughts -- early draft for an interface concept
note by the committer: this mindmap was really work in progress.
Christoph shared it with me while in discussion. I'll place it
here in the git history, since it might be interesting to se
how the thoughts evolved. Isn't that what mindmaps are all about?
2015-04-26 23:22:40 +02:00
51cdc85e58 back from LAC2015: re-read and simplify the code draft 2015-04-13 15:49:38 +02:00
723d1e0164 settle architectural considerations regarding the TreeMuator concept
so yes, it is complicated, and inevitably involves three layers
of indirection. The alternative seems to bind the GUI direcly to
the Session interface -- is there a middle gound?

For the messages from GUI to Proc, we have our commands, based
on PlacementRef entities. But for feeding model updates to the
GUI, whatever I consider, I end up either with diff messages or
an synchronised access to Session attributes, which ties the
responsiveness of the GUI to the Builder operation.
2015-04-03 20:10:22 +02:00
e490fe0263 expand that draft to cover some of the technicalities
- how to deal with children
- how to integrate typing of children
2015-04-01 02:45:22 +02:00
513c02d767 design breakthrough? concept how to implement tree mutations
this is an attempt to resolve the "impedance mismatch" between
a generic metadata model and heterogeneous GUI implementation code
2015-03-30 00:25:37 +02:00
7742d78ba7 investigating use cases of state update notification
the scope is to find out what is relevant for the diff representation,
to be able do design the GenNode element accordingly
2015-03-22 17:39:47 +01:00
b051845835 identify and decide on some of the insidious questions of design
- how to deal with typing
- how to relate equality and mutations
2015-03-21 19:23:41 +01:00
f5ddfa0dbe decide on the foundations of tree diff representation
- we use a GenNode element
- this holds a polymorphic value known as DataCap
- besides simple attribute values, this may hold collections of GenNode sub elements
- a special kind of GenNode collection, the Record, is used to represent objects

The purpose of this setup is to enable an external model representation
which is only loosely coupled to the interndal data representation
through the exchange of (tree)diff messages
2015-03-21 02:00:55 +01:00
9a9e17578c extended planning to define the operation of UI-Bus and model update
this includes a decision about the tree diff representation and handling format
2015-01-17 16:08:56 +01:00
28d18a7326 refactoring: better name for the query focus shifting operation
previously this operation was named 'attach', which an be confused
with attching an object to this location. Indeed, the session interface
even offers such an attach function. By renaming the focus moving
operation into QueryFocus::shift(Scope), this ambiguity is resolved
2015-01-08 15:13:27 +01:00
8b6177a1c5 Design: Backbone of the GUI
This is the first step towards a generic backbone to connect
any GUI elements to the session within Proc-Layer.

It is based on a spefic understanding of Model-View-Controller,
which turns the Model-Controller interactions into messages.
2015-01-06 23:44:58 +01:00
371c13f790 add TODO markers regarding #959
Some parts of the GUI model will be remoulded
2015-01-05 15:47:23 +01:00
1a5e5eaa10 DOC: Wiki / UML clean-up
Remove some orphaned diagrams and PNG images not actually used
in the TiddlyWiki. Add a page with some hints regarding Bouml

See also #960 -- Bouml has been discontinued and is closed source now
not sure how to proceed with this
2015-01-05 15:44:17 +01:00
6d5f86423c sharpening the concept of structured data exchange through diff 2015-01-03 12:36:10 +01:00
beb57cde22 DOC: decision to use a simplistic implementation to start with
This means to discontinue any research into emitting an optimal
diff verb sequence for now and just to document the possible path
I see to reach at such a optimal solution later, when it turns out
to be really necessary performance wise.

Personal note: I arrived at this conclusion while whatching the
New Year fireworks 2014/2015 at the banks of the Isar river in
the centre of the city.
Too sad that 2014 didn't bring us World War III
2015-01-01 04:11:20 +01:00
73f310eb23 DOC: reread and slightly reworded 2014-12-23 02:18:28 +01:00
fe9105f321 DOC: reasoning behind the construction of our list diff algorithm
this is a theoretical description of our method, and gives
the reaoning why it is correct, plus the assesment of
size and complexity order.
2014-12-22 05:20:49 +01:00
42f69b6cb5 DOC: assumptions and definitions for diff handling
...plus a started draft of the list diff algorithm
2014-12-21 07:48:04 +01:00
e00a08b056 reorganise the DSL aspect of the design
we want a simple and straight forward way of defining tokens
of the "diff language". Each token is bound to a specific
handler function in the language interpreter interface.
2014-12-14 03:47:23 +01:00
c911456909 Refactoring: separate DiffLanguage, Interpreter and concrete Language definition
Problem is that likely we'll get a ListDiffLanguage and a TreeDiffLanguage;
after all, I really don't know yet how far to take this whole
diff representation endeavour...
2014-12-12 04:17:02 +01:00
55f49746a1 clarify diff implementation approach 2014-12-06 23:35:22 +01:00
f4cb2896b7 WIP: start with drafting the GUI diff representation
...first step is to design a generic linearised list diff representation.
Basically just need to pull together the theoretical work of the last weeks.
Next steps will be to extend to typed ordered trees.
2014-12-01 02:50:46 +01:00
09e7e1f8f5 WIP: pondering diff representation variants
Actually I arried at the conclusion, that the *receiving* of
a diff representation is actually a typical double-dispatch situation.
This leads to the attempt to come up with a specialised visitor
as standard pattern to handle and apply a diff. Obviously,
we do not want the classical GoF-Visitor, but (yes, we had
that discussion allready) -- well in terms of runtime cost,
we have to deal with at least two indirections anyway;
so now I'm exploring the idea to implement one of these
indirections through a functor object, which at the same time
acts as "Tag" in the diff representation language (instead
of using an enum as tag)
2014-11-10 04:00:39 +01:00
ed54f44b5e Write down some fundamental insight regarding diff algorithms 2014-11-07 03:58:37 +01:00
85d24e980d Design: devise a "linear diff language"
This DSL is usable as wire format for sending
structural change data to another, loosely coupled entity.
A similar format could be used for model serialisation later on.
2014-11-04 04:56:19 +01:00
c09e14f4dc Analysis: some conclusions regarding the diffing mechanism 2014-11-03 02:19:37 +01:00
4c74a2dd43 Design: draft a tree diffing algorithm 2014-10-27 04:49:32 +01:00
6c663a5c9e Design: elaborating how GUI model updates might work
esp. regarding parallelism
2014-10-27 04:48:49 +01:00
a35a6b0724 Design decision regarding model communication in the GUI
this is a quite fundamental decision: we split the GUI into
two sub-layers, and one of them is GTK agnosic
2014-10-25 04:00:11 +02:00
20105d1228 Design: considerations regarding widget structure in the timeline 2014-10-25 03:37:20 +02:00
ead58d03a9 DOC: expand concept map
I know that "reactive" is some kind of a fad currently.
But the term captures the intent very well, and I for sure
wanted such a GUI 5 years ago. Waiting after each stroke or
trim for 5 seconds or even 30 seconds for the UI to update
just totally sucks and kills any creative flow.

We all know that an application needs to be built for reactivity
and exactly that is what we do.
2014-10-25 01:56:44 +02:00
41a711120c planning the access structure to session content
initial considerations; there is a concurrency problem, since
all of session handling within Proc is deliberately not threadsafe.
Thus the decision is to make this the gui::model::SessionFacade's responsibility
2014-10-19 05:54:20 +02:00
1c0e86d373 DOC: complete the core concepts of workflow
A lot of details could be expanded, but this are the
most important concepts and relations for any GUI design
2014-10-18 22:53:55 +02:00
ac5816df4f DOC: expand on the core concepts of workflow 2014-10-18 21:39:13 +02:00
ed601d9eba DOC: start a concept map for workflow and interaction design 2014-10-17 04:02:56 +02:00
99438d459c some notes regarding the design of a GUI proxy model 2014-10-17 03:43:01 +02:00
718d544d8e Design: decide on the conventions for representing a timeline in the GUI
Actually this is nothing new, just making explicit what is evident
from the definition of the Proc-Layer model entities. By following
these conventions, it should be possible to come up with a
clearer structure for the custom timeline widget(s).
2014-10-16 04:38:44 +02:00
7c3efb309a explain the term 'subsystem' 2014-02-16 22:03:47 +01:00
5d835c71f3 TiddlyWiki: fix some orphaned pages
...caused by image names starting with upper case letter
2014-02-16 22:02:55 +01:00
6822a9e2fb DOC: reorganise the Doxygen configuration and structure
- upgrade the configuration to a current version
- provide a frontpage with cross-links to other documentation
- define a set of modules; relevant classes and files can be
  added to these, to create a exploration path for new readers
- fix a lot of errors in documentation comments
- use a custom configuration for the documentation pages
- tweak the navigation, the sections and further arrangements
2013-10-25 06:34:38 +02:00
567ab3819b WIP: draft an improved version of the Singleton factory
...this would both improve our general design and circumvent
the problems with Clang and static variables
2013-10-14 01:18:56 +02:00
5cbc152833 before FrOSCon 2013: recent coding work and documentation improvements 2013-08-20 04:42:57 +02:00
160dafebdb WIP re-read the code, try to understand the problem to be solved
unfortunately there was an interruption of more than a month
since my last Lumiera contribution
2013-08-13 01:16:29 +02:00
fada231a6b upgrade TiddlyWiki to v2.8.1
Notably TiddlyWiki provides now a fallback mechanism
in case the saving to a local file fails due to security
restrictions. When this happens, TiddlyWiki generates a
download link pointing to the current content; this way
one is at least able to "save as" through the browser
context menu.

Due to some controversial policy changes in recent Firefox versions
the support for saving to local files was removed. The rationale
given by the Firefox developers was that this is a rarely used
and generally outdated concept; preferrably people shall use
extensions and save to cloud services (!)

Anyway, Jeremy Ruston, the original author of TiddlyWiki, wrote
a Firefox plugin called "TiddlyFox" to work around these
arcane limitations.
2013-08-10 05:36:57 +02:00
77066ee3ce WIP: how to start the actual calculation streams within EngineService
this draft fills in the structure how to get from an invocation
of the engine service to the starting of actual CalcStream instances.

Basically the EngineService implementation is repsonsile to
instruct the Segmentation to provide a suitable Dispatcher.
2013-06-03 05:25:13 +02:00
723096d3f2 WIP introduce a new kind of job closure to perform the planning
this might help solving that gordian knot related to the TimeAnchor,
the Dispatcher and the introduction of a possible playback strategy
2013-06-02 03:09:18 +02:00
56be672358 WIP: reworking the dispatcher interface
the goal is still how to introduce a playback strategy
2013-05-30 02:10:56 +02:00
8982223a4d pondering about a suitable definition of a planning chunk (#920)
mostly this seems to be a matter of getting the terms
and meaning of the involved entities straight
2013-05-21 04:35:25 +02:00
7c596a8089 remove the old Main-TiddlyWiki
this is superseded by our website since a looooong time.
I've just re-checked that all relevant content is indeed
migrated to Lumiera.org
2013-05-20 03:33:53 +02:00
00dc435169 upgrade TiddlyWiki to v2.7.2
we were using an very ancient TiddlyWiki version, basically
unaltered since the start of the Lumiera project.

Recent Firefox versions (starting with FF-17) effectively
removed the ability for JavaScript code to get additional
privileges for writing local files; this change seriuosly
undermines the usability of TiddlyWiki and a lot of similar
portable local JavaScript applications.

The original author of TiddlyWiki, Jeremy Ruston, has written
a Firefox plug-in to work around this restriction; this prompts
us to upgrade to a recent TiddlyWiki version as well.

The good news is: recent TiddlyWiki versions are able to import
Tiddlers from older Wikis without much hassle.
2013-05-20 03:24:02 +02:00
7ada9ff291 consider how to integrate a playback mode strategy 2013-02-11 03:19:24 +01:00
9f7e229a12 DOC: requirement analysis of playback modes 2013-01-19 23:29:10 +01:00
30409e66bd WIP: considering how to support non-linear playback modes 2013-01-13 23:20:20 +01:00
f41d3221c8 remove the old "main" TiddlyWiki
now, the Proc-Layer TiddlyWiki is the only one to survive...
2013-01-03 11:22:41 +01:00
65feeb83fd supply some documentation about lumiera::Query 2013-01-02 03:32:49 +01:00
e902757a14 (DRAFT) refactor the way how to retrieve the syntactic query representation
there can't be a callback from the base ctor;
instead the subclass must pass a QueryText definition
2012-12-29 00:31:24 +01:00
5dfe5e099f refactor namespaces for query and defaults manager 2012-12-01 08:44:07 +01:00
baefd74ae7 prepare refactoring of the Query interface 2012-11-25 02:04:19 +01:00
062e1bbdc1 explicate the JobPlanningSequence definition
..causing the compiler to instantiate the
involved templates, i.e. get the complete
pipeline definition through the compiler
2012-10-10 05:20:22 +02:00
016a739a5c WIP back to the original problem: how to dispatch jobs...
brainstorming how to implement the job planning stage

the idea is to built on top of the IterExplorer,
but have the "stack" of re-evaluation integrated
into a custom type, which exploits the static
node network structure to avoid heap allocations

solution idea: again use a builder function?
2012-10-10 05:20:20 +02:00
ddff8b654b WIP investigating the relation of Jobs, JobTicket and Closure in detail 2012-10-10 05:20:14 +02:00
08d266819d re-read my own code and pick up the design work
..next question is: how to shape the dispatcher interface,
in order to support ongoing chunk wise planning
of new jobs, including a continuation
2012-10-10 05:20:13 +02:00
365f54d59e Proc-Layer TiddlyWiki entrance pages: some minor updates 2012-10-10 05:20:11 +02:00
875342fa40 initial draft for the job representation
this draft is based on
 - Cehteh's draft for the scheduler
 - my plannings about segmentation and JobTicket

it defines "Job" as a closure which can be invoked
from plain-C, using the information in the
job descriptor datastructure
2012-10-10 05:20:11 +02:00
e9dbb3bdb1 stubs for some important components of play/engine (JobTicket...)
also touches the question how to represent the job
descriptor datastructure. @Cehteh: I've just pasted
in your preliminary data struct definitinons
from the relevant mailing list discussions.
2012-10-10 05:20:11 +02:00
23ac29028c design draft: job tickets and planning... 2012-10-10 05:20:10 +02:00
157e3b6867 test-driven brainstorming: define default timings... 2012-10-10 05:20:10 +02:00
2cb254365c some musing about timing constraints and quantisation 2012-10-10 05:20:10 +02:00
a4e3383367 turn Dispatcher into an interface 2012-10-10 05:20:09 +02:00
e581246f63 forming some entities to support the dispatch step 2012-10-10 05:19:56 +02:00
9dae352731 clarification regarding the Dispatcher 2012-10-10 05:18:59 +02:00
3768791c76 considerations how to connect exit nodes to external outputs 2012-10-10 05:18:58 +02:00
7e7ecc5d51 draft: integrating an engine mock implementation 2012-10-10 05:18:58 +02:00
687102feb3 planning next steps: how to transform DummyPlayer into a real player 2012-10-10 05:18:57 +02: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
d2f83523ca join recent player subsystem work, SCons overhaul and documentation 2012-01-11 07:54:43 +01:00
0e08f269f5 remove the superfluous TiddlyWikis
..after integrating all still relevant asciidoced content
into the main website.
2012-01-11 06:55:54 +01:00
06c7c27252 merge diagnostic facilities 2011-12-31 06:49:31 +01:00
87f7a8f6e8 unit test to cover thread-local helper 2011-12-24 05:55:31 +01:00
451b0abec5 spelling and typos 2011-12-24 05:48:31 +01:00
d27e3b15a9 clarify the handling of specific output operation modes (e.g. number of channels) 2011-12-23 02:22:38 +01:00
74a982409e document the internal structore of OutputSlot
...as far as decided and clarified by now
2011-12-20 04:59:00 +01:00
cedfa34074 considerations regarding clean-up of superseded model segments 2011-12-17 22:40:01 +01:00
bda0dea990 clarify the relation of PlayProcess, CalcStream and EngineFacade 2011-12-17 02:20:48 +01:00
c7d4412cec integrate recent GUI / timeline and work done on the player subsystem 2011-11-27 02:15:11 +01:00
91b74ad7bd implement missing parts of test/dummy buffer provider 2011-11-20 01:35:52 +01:00
63dbc89b6f draft implementation setup for OutputSlot baseclass 2011-11-05 16:51:24 +01:00
5188982e71 considering details regarding the usage of buffer metadata 2011-09-25 19:26:08 +02:00
ed5091d8f5 considering Buffer handling and BuffTable in more detail 2011-09-25 19:26:06 +02:00
1f13931640 test driven brainstorming: using a BufferProvider 2011-09-25 19:26:05 +02:00
8016547d9c rework and clarify node invocation sequence
while passing by, identified quite some
node invocation code to be rewritten
2011-09-25 19:26:05 +02:00
95bb5e64aa WIP desiging the interplay of BufferProvider and BuffHandle 2011-09-25 19:26:05 +02:00
737765260d Test-driven brainstorming: diagnostic adaptor for the engine 2011-09-25 19:26:03 +02:00
3125d1c573 a first draft for the Engine Interface 2011-09-25 19:26:03 +02:00
4a62444ad4 WIP pick up on the design work regarding Engine, OutputSlot and Player 2011-09-25 19:26:02 +02:00
f8842c75ed WIP draft OutputSlot internal transitions 2011-09-25 19:26:01 +02:00
a199bff92b BufferProvider as a frontend to buffer management 2011-09-25 19:26:00 +02:00
7e3054df18 considering timing glitches in detail 2011-09-25 19:26:00 +02:00
650e73c454 OutputSlot: draft buffer handover protocol, remove the diferent models 2011-09-25 19:25:59 +02:00
ea8841b7ad analysis of a design problem and decision for the OutputSlot 2011-09-25 19:25:59 +02:00
9e53053944 WIP: draft building a PlayProcess 2011-09-25 19:25:58 +02:00
dea1fa57a2 draft play process structure; clarify handling of multiple channels 2011-09-25 19:25:58 +02:00
a19562942c further considerations regarding output and output slots 2011-09-25 19:25:57 +02:00
4ece135257 cont.. drafting OutputSlot 2011-09-25 19:25:56 +02:00
ce6a917b59 first draft spec for the OutputSlot 2011-09-25 19:25:56 +02:00
a379476414 create outline of PlayService, add stubs for Play::Controller 2011-09-25 19:25:56 +02:00
971dea6f6a PlayService: basic definition and link to facade 2011-09-25 19:25:55 +02:00
9bd96a1b19 time-entities refactoring: Duration isn't an Offset
removed that inheritance relation; it was a typical
example of abusing inheritance and violated the
Liscov substitution principle. It is sufficient
to allow promotion of an offset into a Duration.
Note: Duration is the time metric
2011-09-25 19:25:53 +02:00
5e8a9b50d1 define asset::Viewer 2011-09-25 19:25:52 +02:00
eb5e0ab9ff WIP: start building a Test for time::Control. Need Cartesian product of cases... 2011-09-25 19:25:51 +02:00
4731afefb8 continue drafting the Player control elements -- life timevalue changes 2011-09-25 19:25:50 +02:00
c091b8e260 define Player / Output subsystem stub 2011-09-25 19:25:50 +02:00
cb6453afe1 detailed planning how to build the player subsystem
key idea is to grow and rework the design of the
DummyPlayer to yield the full featured Player
2011-09-25 19:25:49 +02:00
ebd6cfca82 Start design work for the Player Subsystem 2011-09-25 19:25:49 +02:00
99bf3c6d81 join with latest work on timecodes and frame quantisation
Merge branch 'timequant' into gui
2011-05-15 04:28:20 +02:00
6dd762fa7a (cont) details of organising the fixture datastructure 2011-05-15 04:26:22 +02:00
29df0984ec (cont) details of releasing storage of fixture segments 2011-05-15 04:26:22 +02:00
5f6cbdc5bc detail analysis of fixture storage managment 2011-05-15 04:26:22 +02:00
6b1b6cb805 draft how to integrate parsing of timecode formats 2011-05-15 04:19:27 +02:00
bf61ff7248 WIP test-driven brainstorming: nudge by grid 2011-05-15 04:19:26 +02:00
5851332628 back to business: now able to implement time mutation messages 2011-05-15 04:19:25 +02:00
4d6bb3d54c design outline for a limited time::Mutation capability 2011-05-15 04:19:24 +02:00
0e4ed856d7 WIP: get back into the topic of time value mutations
start drafting a unit test....
2011-05-15 04:19:24 +02:00
ab72b528c8 draft test for changing time specs 2011-05-15 04:19:22 +02:00
1e1c3706dc update some DIR_INFO entries 2011-04-05 00:44:30 +02:00
ecb7d58a4f Merge changes to make Lumiera installable 2011-03-07 03:31:19 +01:00
Stefan Kangas
58a6303a4c Remove incorrect occurrences of glade being mentioned as a dependency. 2011-03-07 03:02:35 +01:00
587f507292 analysis/design: changing time values 2011-01-23 22:44:26 +01:00
14f233f83b WIP: some more test coverage ... unveiling yet more bugs 2011-01-22 02:35:58 +01:00
9d75739089 SMPTE Timecode (without drop frame) unit test pass 2011-01-21 20:24:41 +01:00
05383ea44a crafting a integer scale wrapping util, for timecode conversions 2011-01-20 13:21:14 +01:00
aa5c78a30f TimeGridBasics_test pass 2011-01-15 15:04:23 +01:00
ee0dcf3ba0 introduce generic grid API to subsume quantiser and grid asset 2011-01-15 03:49:35 +01:00
a1f2a60427 WIP design draft regarding the interplay of quantisation and timecode 2011-01-13 23:56:52 +01:00
52eb4c4709 set an explicit artificial limit on the allowed time range
this is the first building block in an attempt to
protrect against time wraparound. The intention is
not to be airtight, but practically effective.

A really airtight solution would require writing
our own SafeInt class
2011-01-13 03:36:11 +01:00
d30515c37e analysis of range limit problems in quantisation 2011-01-13 03:36:11 +01:00
dede87d384 implement basic quantisation operation for timehandling library 2011-01-13 03:36:11 +01:00
e7f5ce9e33 WIP rework timecode format hierarchy
second try: eliminate base class,
work with concrete formats allways...
2011-01-13 03:36:09 +01:00
f798428428 WIP start a unit test to cover simple time grids 2011-01-13 03:36:08 +01:00
640d061de6 Meta Assets as a framework for specifiyng a TimeGrid 2011-01-13 03:36:08 +01:00
ff87b62387 decide how to categorise time grids: they are Meta Assets. 2011-01-13 03:36:07 +01:00
b5f32522b1 still chewing on the remaining problems with time quantisation 2010-12-26 03:36:27 +01:00
9e60a631eb solve or decide the problems turned up by the usage analysis. 2010-12-24 19:21:10 +01:00
966d2227e5 analysis of time usage, including quantisation pitfalls 2010-12-23 22:20:56 +01:00
1294926508 Time Quantisation: theoretical analysis and initial design draft 2010-12-20 07:37:41 +01:00
e7191ed3c6 Planning Fixure: Segmentation datastructure (#726) 2010-12-13 03:22:11 +01:00
8a54e00b6b ModelPort registry unit test pass (closes #727) 2010-12-11 23:40:12 +01:00
2827961385 WIP: test driven brainstorming about model port registry 2010-12-10 01:27:17 +01:00
ee56ab36a0 Definition of ModelPort, model port reference and -table (#718) 2010-12-05 02:46:37 +01:00
56ceca398b The first substantial step towards a builder backbone
Defined the structure of the fixture and the outline
of the process leading to creating this data structure.
2010-12-05 02:46:36 +01:00
fc051dfcba OutputMapping implementation draft
coded up the easy part, omitting the actual resolution
based on an configuration query
2010-11-27 06:01:31 +01:00
b42e5c859f Test-driven brainstorming: how should output mapping be used? 2010-11-23 03:40:11 +01:00
a43bd239cb Try to complete the design of Binding and OutputMapping 2010-11-22 04:26:28 +01:00
f0fbf0e6f1 bring some UML diagrams up-to-date 2010-11-22 02:28:03 +01:00
5ae1f819f2 Finished the design of global pipes 2010-11-21 02:29:26 +01:00
9473fd3d67 OutputDesignation implementation draft 2010-11-19 05:01:43 +01:00
cfc4325f55 define details of binding and mapping 2010-11-17 04:49:22 +01:00
fbdf358cfb Model port and output mapping details 2010-11-17 04:49:22 +01:00
549365f548 specified the properties of OutputMapping 2010-11-17 04:49:22 +01:00
71f1dfede8 WIP output mapping draft (#716) 2010-11-17 04:49:21 +01:00
2eafc5f532 Wiring concept (I) -- stream connections 2010-11-17 04:49:21 +01:00
c744a538e0 continue planning of wiring and output handling 2010-11-17 04:49:21 +01:00
7c758b04db rename Struct-Asset factory function to better reflect the semantics 2010-10-29 04:28:46 +02:00
da04e13213 re-thinking the pattern of the fake implementation 2010-10-28 03:57:12 +02:00
80b9e19a20 rewrite the TiddlyWiki frontpage 2010-10-27 04:50:03 +02:00
987026f4c8 implement creation of "default" Timeline 2010-10-25 06:08:36 +02:00
9fc366bd25 session lifecycle implementation.. 2010-10-24 06:50:00 +02:00
796c4488a5 planning session lifecycle implementation 2010-10-23 05:58:14 +02:00
3e9c337ac0 review and verify lib::ElementTracker 2010-10-18 05:33:46 +02:00
bb3eb8f3aa Merge integration of placement scopes and QueryFocus 2010-10-16 03:39:33 +02:00
b7b9a9e79d (cont) expanding on how to use output designations 2010-10-16 02:25:47 +02:00
02c383d1dd Deciding on the implementation of global pipes. Channel mapping for virtual clips 2010-10-16 02:25:47 +02:00
9cb028a261 (cont) output handling 2010-10-16 02:25:47 +02:00
5f2e749ab7 (cont) output handling 2010-10-16 02:25:47 +02:00
48605827a6 Add test to cover the very basic MObject interface 2010-10-16 02:21:20 +02:00
58757281b0 rearrange the query functions to suit the changed ScopePath internals 2010-10-16 02:21:17 +02:00
d1d7f3bc58 decided on an extension point to add virtual/effective paths
we need that later to get full meta-clip functionality
2010-10-16 02:21:17 +02:00
8078357e3c revisiting the binding scope problem 2010-10-16 02:21:17 +02:00
e16ca49894 Merge in new (experimental) 'advice' concept 2010-07-14 04:33:42 +02:00
e3639a1dc8 (cont) output handling and design problems regarding global pipes 2010-07-12 04:19:52 +02:00
e3d322a7e7 (cont) planning of output handling 2010-07-11 05:06:28 +02:00
87669dca58 (cont) output handling considerations 2010-07-09 03:58:19 +02:00
fb43061159 (cont) problem of output designation 2010-06-27 06:24:23 +02:00
639aff0fa5 (cont) analyzing the problem of output designation 2010-06-25 04:43:06 +02:00
cffbdd72e5 collecting some observations regarding management of output designations 2010-06-22 03:54:26 +02:00
7c4d57b408 spec for various ways to query 2010-06-19 08:46:25 +02:00
4f6fa69f2b investigate the design problems (issuing scope exploartion queries) 2010-06-19 03:36:46 +02:00
a8dcd9f494 idea how to implement searching for objects with specific properties 2010-06-16 05:56:44 +02:00
a1f3ad835b investigating the problem of finding an object with given conditions 2010-06-15 05:24:05 +02:00
c6c7214826 try to break the design deadlock with sequence / track creation 2010-06-14 02:08:45 +02:00
fc3e43bb19 re-reading my design and plannings from March, identiyfying next steps to take 2010-06-13 03:34:12 +02:00
2360f9b4c0 Advice colaboration: implemented and passes basic unit test 2010-06-05 05:09:42 +02:00
5a615ee4f8 consider advice::Index exception safety 2010-06-04 18:39:39 +02:00
d0e7f9b77d use the NullValue holder to solve the problem with default advice solutions
Implementation is simple, but the implications might be tricky
2010-06-03 04:40:38 +02:00
91c2763fa4 WIP considering how to manage default / fallback advice 2010-06-03 04:40:38 +02:00
a9595d0a7f refactor link to the advice system into separate baseclass 2010-06-03 04:40:38 +02:00
69af735070 reconsider advice implementation. Investigate some tricky implementation decisions 2010-06-03 04:40:37 +02:00
83b5c8c2c2 WIP code up external advice API 2010-06-03 04:40:37 +02:00
c9437b3bff binding index unit test pass 2010-06-03 04:40:37 +02:00
c8ac2b0447 planning the advice binding index implementation 2010-06-03 04:40:35 +02:00
5b48b9f864 fix a regression regarding struct-asset naming scheme 2010-06-03 04:40:35 +02:00
f2269b7e78 Implement Advice binding pattern 2010-06-03 04:40:35 +02:00
f27024172f Implementation skeleton for advice binding match 2010-06-03 04:40:34 +02:00
3e2b78b670 fill in the basic definitions to make the draft test compile 2010-06-03 04:40:34 +02:00
1245f873e6 Advice: Requirements, design conclusions, implementation draft. 2010-06-03 04:40:34 +02:00
e3ebe2cc55 expand on some detials and requirements for advice 2010-06-03 04:40:33 +02:00
311fb62c9d Collect properties for the new Advice concept 2010-06-03 04:40:33 +02:00
0f6c2e84d2 test-driven brainstorming: TypedID usage 2010-06-03 04:37:22 +02:00
ea861a8c74 update UML to reflect improved Asset/MObject design 2010-06-03 04:37:21 +02:00
3bb8d87141 corrections and updates to older pages (object creation) 2010-06-03 04:37:21 +02:00
1698680315 planning TypedID (registration service) 2010-06-03 04:37:21 +02:00
c691213003 EntryID: fix symbol generation and improve ordering 2010-06-03 04:37:19 +02:00
39355713fd cleanup 2010-06-03 04:37:17 +02:00
1119b917a9 planning general refactoring to allow intended binding/sequence handling 2010-06-03 04:37:17 +02:00
2404cab73b continue re-planning of the assets and object relations 2010-06-03 04:37:17 +02:00
4d4749ea5d rework media-clip relation and VirtualClips, adapt Timeline-Sequence handling 2010-06-03 04:37:17 +02:00
4bf9a36f2e Start working on timeline-sequence binding. 2010-06-03 04:37:16 +02:00
bdb21c4aa8 draft required functionality for the element-tracker 2010-06-03 04:37:15 +02:00
ea538d962f test-driven brainstorming: adding and removing session parts 2010-06-03 04:37:14 +02:00
8f34129f60 planning: structural assets and the track-ID 2010-06-03 04:37:14 +02:00
82c2768e04 analysing the relation of sesison, timeline, binding and sequence in detail 2010-06-03 04:37:13 +02:00
4594ddde3a WIP: test driven brainstorming regarding sequence/timeline handling 2010-06-03 04:37:13 +02:00
c2cbe4c9e8 change Timeline and Sequence to be structural assets 2010-06-03 04:37:13 +02:00
d4b66a42ad WIP: test driven brainstorming about the session API 2010-06-03 04:37:13 +02:00
93cd85ea07 Planning session API (cont.) 2010-06-03 04:37:12 +02:00
cbf71e46da Planning and designing the session API 2010-06-03 04:37:12 +02:00
fac29f44f6 WIP: re-reading my draft regarding the session interface 2010-06-03 04:37:12 +02:00
d61ff56975 Mostly purge the term "EDL" and replace it with "Sequence" or "Session" 2010-01-26 00:36:34 +01:00
b32a48f410 Finish definition/documentation of PlacementRef and PlacementIndex 2010-01-23 15:50:45 +01:00
37499058f5 Spec: handling of object identity 2010-01-08 04:04:16 +01:00
6196c41daa start collecting informations and definition reagarding object identity 2010-01-07 10:17:59 +01:00
2fd7a2f6f9 patch temporary re-entrance problems on session creation (maybe #495) 2010-01-07 08:28:54 +01:00
4773305853 Fix itertools: allow TransformIter to return an reference 2009-12-19 03:55:02 +01:00
d949f0b7b6 defining the model root MObject more clearly 2009-12-11 03:46:34 +01:00
54d0b30358 Planing the top-level entities of the Session... 2009-12-08 04:08:11 +01:00
624820b817 considerations regarding the Binding of sequences to timelines 2009-11-29 18:16:29 +01:00
8a47f1a1ac considerations regarding type handling in the PlacementIndex 2009-11-27 20:30:06 +01:00
60fad52961 Advice concept: write down the basic colaboration 2009-11-22 18:33:34 +01:00
12dc0e2c2d add unit test, write documentation. Closes #420 2009-11-22 07:26:51 +01:00
1a02239e26 write down all the ScopePath operations identified thus far 2009-11-20 23:06:27 +01:00
ce98bd9bca Finished basic concept how to establish a current query focus (Ticket #403) 2009-11-20 22:00:15 +01:00
cdb84a9b16 refining the draft for ScopeLocator 2009-11-20 19:58:22 +01:00
981ea94708 finished the PlacementIndex API. 2009-11-13 04:52:48 +01:00
1a76ce7a5f implement two of the SessionServices (internal APIs)
providing implementation-level access to the PlacementIndex
and especially installing a mock index for unit tests
2009-11-11 05:30:24 +01:00
79d5e49a74 defined basic session lifecycle and service access. Closes Ticket #400 2009-11-09 05:21:59 +01:00
043d4f42fa working example implementation of the access mechanism to session internal APIs 2009-11-09 02:08:37 +01:00
aaf19f4d89 First draft regarding the access of session implementation services (Ticket #400) 2009-11-07 19:49:29 +01:00
0ed30225b6 Initial considerations how to handle session lifecycle consistently 2009-11-07 05:01:53 +01:00
bb8c018214 integrate QueryFocus with the new ContentsQuery facility 2009-11-06 18:42:15 +01:00
e0e9b7c2c0 WIP about how to link the QueryFocus system to the session/PlacementIndex 2009-11-04 04:56:25 +01:00
2620c38ed9 documentation, close some tickets... 2009-11-01 02:02:21 +01:00
ab524c3b7c Document the Lumiera Forward Iterator concept 2009-10-31 23:57:47 +01:00
ea52a188fa Start a category for documenting concepts, abstractions and formalities 2009-10-31 19:50:23 +01:00
f70f8c4e4a implemented the mechanism for dispatch-to-concrete resolution 2009-10-30 18:37:08 +01:00
572f26edc8 document the QueryResolver design 2009-10-30 17:16:37 +01:00
5968d35cdf WIP maybe resolved now the knot in my design...? 2009-10-25 21:39:02 +01:00
5d9671cb2c WIP place a ref-count into the result iterator 2009-10-25 16:18:53 +01:00
eb2d309601 WIP: reworked the design further 2009-10-24 16:03:14 +02:00
455ad14ae5 set up some steps which might lead to a solution of the typed-query-problem 2009-10-23 20:09:36 +02:00
23c0387298 Updated Entry-Page and overall description of Renderengine TiddlyWiki 2009-10-23 20:08:58 +02:00
8345df394d WIP continued turning over the problem.... 2009-10-23 03:10:55 +02:00
007a6e1855 Consideration how to issue content discovery queries 2009-10-21 05:35:32 +02:00
f01da49955 WIP planning the operations needed on QueryFocus 2009-10-20 04:31:50 +02:00
f0c9beb5c6 WIP design the ScopePath API by unit test 2009-10-18 19:08:21 +02:00
2e62a3b01b WIP continue design how to discover session contents 2009-10-17 21:31:03 +02:00
cfc17e75ba refined and clarified planning of Scope and QueryFocus 2009-10-16 21:20:30 +02:00
d193fbf920 Planning the QueryFocus in more detail 2009-10-16 01:54:38 +02:00
edbd54b062 Initial planning regaring the QueryFocus 2009-10-14 05:48:24 +02:00
4695f41b7c Documentation of PlacementScope concept 2009-10-12 08:10:00 +02:00
17c7160f02 refactor CommandDef, get rid of the possibility of re-defining. YAGNI! 2009-10-11 05:57:45 +02:00
d2acf48587 change semantics of state predicates, as it seems less surprising this way 2009-10-11 05:57:44 +02:00
95db5f9840 clarify state predicates in conjunction with command lifecycle 2009-10-11 05:57:44 +02:00
e9b95e47cf Command handling pattern? test-driven brainstorming 2009-10-11 05:57:40 +02:00
843f44795e Bring the design- pages up-to date. Document design decisions more clearly 2009-10-11 05:57:40 +02:00
32612a1a97 WIP: link between asset::Proc and the Build process, allowing to resolve the processing function 2009-09-05 03:04:00 +02:00
391181e699 WIP some further musing about how to do a simple invocation for unit testing ProcNode 2009-09-04 01:59:44 +02:00
ddb8805a73 WIP attempt to nail down a very simple example... 2009-08-31 01:32:53 +02:00
99310dc0af WIP: continue with considerations how actually to build and wire an individual ProcNode 2009-08-29 18:33:46 +02:00
ff8be4493c WIP get rid of some cruft and placeholders 2009-08-29 13:02:26 +02:00
0e2b1bcf35 some initial considerations how to handle Effects 2009-08-29 12:41:49 +02:00
97ee7a95ea WIP try to get grip at the actual node creation...
determining the right context for node creation to happen
2009-08-29 12:26:47 +02:00
4214284d35 accessing the frameID from within the pull() call 2009-08-29 12:26:47 +02:00
9f40e4af9c implemented definition and access of handling patterns 2009-08-09 21:55:47 +02:00
f2126c0764 WIP partially get new proc-layer command impl through the compiler 2009-08-01 23:57:12 +02:00
f40282b2ff WIP devised various aspects of command execution, drafted as unit test 2009-07-24 05:24:39 +02:00
a8a0e07726 test driven brainstorming 2009-07-23 03:47:57 +02:00
66f94f90f3 drafting/design (cont) 2009-07-22 05:12:48 +02:00
d122a32662 Documentation & planning the parts to implement next 2009-07-21 04:13:12 +02:00
b937bd08ae WIP: parameter closure brainstorming 2009-06-14 05:38:35 +02:00
3a7de1654a WIP: create a "scrapbook" test for trying out some ideas 2009-06-08 21:29:09 +02:00
529d4bd459 Planning / Design: Session interface, Commands 2009-06-08 04:50:29 +02:00
011018c5c1 tag all Tiddlers containing images 2009-06-08 04:50:29 +02:00
90dffdc9d2 some cleanup and renaming 2009-06-06 06:55:13 +02:00
8a453bd52b WIP: start drafing MObjectRef 2009-06-02 03:31:52 +02:00
1f5d94683a WIP: test driven brainstorming... 2009-06-01 04:53:45 +02:00
d49eea6e5d finished reworking Placement (hierarchy and ID) 2009-05-31 05:02:03 +02:00
20a1268683 recast the PlacementHierarchy_test to use the real Placement/MObject hierarchy 2009-05-29 23:13:56 +02:00
02e464da12 small tweak to the task macro (estimate rather in days) 2009-05-29 21:16:12 +02:00
003895b08d considering how to bring the new hash ID into Placement.
Which in turn is required for the Placement/MObject ref and the Placement index
2009-05-24 19:34:47 +02:00
85a9c99e52 hash ID: add trivial implementation + impl based on LUID 2009-05-24 05:14:11 +02:00
35ebe966b5 add new kind of MObject (Binding) to express special scopes 2009-05-21 04:06:36 +02:00
7abada72fd a bit of API brainstorming 2009-05-13 03:46:08 +02:00
b32c3f5898 defining the concept of a placement scope 2009-05-12 05:49:37 +02:00
b5a1e75bb7 considering which operations to support on the index 2009-05-11 03:27:08 +02:00
8f8831c8b3 planning index structure.. 2009-05-09 17:32:29 +02:00
9b3ca200e7 considering new facilities for referring to placements 2009-05-09 03:08:38 +02:00
7e51947c61 investigating the handle based solution in more detail 2009-05-01 02:17:23 +02:00
00ef811850 planning... 2009-04-26 01:19:14 +02:00
4d200b298b some preliminary notes regarding session Proc-Session/GUI interface 2009-04-24 23:30:13 +02:00
41f98a7a24 Update Library version info in the TiddlyWiki 2009-04-20 01:58:54 +02:00
f2cb3e47fc note some additional lib dependencies (found on Lenny) 2009-02-16 07:43:36 +01:00
ea56841389 DummyPlayer finished. General Documentation regarding Layer Interfaces and DummyPlayer 2009-02-09 05:48:28 +01:00
c9f9c3d0d3 Document what happens when running the DummyPlayer 2009-02-01 17:26:25 +01:00
6473971d60 fix a typo 2009-01-31 23:42:57 +01:00
c01657b93f continued achitecture planning for the Dummy Player 2009-01-31 23:42:56 +01:00
63565ebd97 merge latest work from Joel for colaboration on the Player mockup, adjusting build-dependencies 2009-01-18 22:13:17 +01:00
e8639b8319 WIP work out further how to handle start/stop of layer separation interfaces 2008-12-15 13:36:41 +01:00
07d31fe772 Concept draft regarding layer separation interfaces 2008-12-15 13:36:41 +01:00
80e1e382f4 merge new plugin/interface system, testsuite changes, documentation 2008-11-07 01:26:31 +01:00
0d1dbac28f UML drawing and further description of Timeline, Sequence, Output 2008-11-02 23:19:37 +01:00
1da6e70d54 draft for a solution how to relate project, timeline(s) and EDLs 2008-11-01 19:54:59 +01:00
490b7d163c doc cleanup 2008-10-20 03:33:55 +02:00