84281d5b60
WIP: CalcStream initialisation
...
especially: where to establish the effective Timings.
also fixed several compilation errors
2013-06-15 04:02:48 +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
082822fde8
relocate the JobClosure interface to be defined alongside of Job
...
This is necessary since the implementation of the job functions
calls through the VTable of the interface JobClosure. Thus this
interface (and the VTable definition) needs to reside within
some compilation unit linked together with the basic job class.
TODO: move class Job entirely into the Backend
2013-05-31 02:59:32 +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
e0c5b18740
draft indicator (helper) to support tree navigation
2013-04-29 01:36:32 +02:00
25be40bb4a
change PlanningStepGenerator end-of-sequence logic
...
basically I've changed my mind to prefer an
infinite JobPlanningSequence, which is just
evaluated partially. This removes the need to
embody the logic of planning chunk generation,
which really is a different concern.
2013-02-11 03:23:10 +01:00
7ada9ff291
consider how to integrate a playback mode strategy
2013-02-11 03:19:24 +01:00
30409e66bd
WIP: considering how to support non-linear playback modes
2013-01-13 23:20:20 +01:00
aca90f7ce8
DONE: mechanics of job planning
2013-01-12 14:36:01 +01:00
2b0e6d63c9
stop condition for chunk wise job planning
2013-01-12 12:49:26 +01:00
a4411d00b1
DONE: time anchor and latency handling for job planning
2013-01-12 12:38:33 +01:00
e40f3fe97f
introduce a render engine configuration facade
2013-01-12 11:17:29 +01:00
18605b0c19
handling of real time start offset
...
decision: the base for any deadline calculations
is the expected real time corresponding to the grid origin.
This value is contained in the Timings record.
2013-01-12 08:36:35 +01:00
72e5557d1e
locate the real time / nominal within engine::TimeAnchor
...
this clarifies the relation of TimeAnchor and Timings,
the latter act as a general spec and abstracted grid,
while the latter actually performs the conversion and
deadline checking
2013-01-11 18:12:40 +01:00
d18e36708d
re-read the code
...
OMG....
2013-01-11 16:48:28 +01:00
4ede0453be
resolve the remaining liblumieracommon.so dependency problems
...
now this library doesn't refer to any symbols from
Proc-Layer anymore. Resolving these problems
highlighted IMHO a serious shortcomming of our
interface system, which hinders the building
of abstractions at interface level
2013-01-04 07:45:18 +01:00
ef9a6e6f11
note some unresolved problems with our DummyPlayer
2013-01-04 06:00:35 +01:00
3d628b6eee
fix ill-guided linking of the DummyPlayer facade object type info
...
DummyPlayer is experimental code,
but actually we've established the convention
to linke the facade-proxies into common/interfaceproxy.cpp
2013-01-04 04:34:01 +01:00
1328ef4aa6
solution: how to retrieve syntactic representation
...
there is now a mechanism to allow sprcialised queries
to generate this syntactic representation only on demand
The actual concrete representation e.g. for scope queries
still remains TODO, but this won't really change
until we target the integration of a real resoloution engine
2013-01-02 04:18:05 +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
a1d98eb457
restore and fix some broken tests
...
..more to come, especially several of the
QueryResolver based tests are still broken
2012-12-27 03:31:09 +01:00
933e486cf9
clarify some aspects of Session lifecycle
...
- consider especially where the reset of internal indices happens
- actively purge the Assets, the ConfigRules and Defaults
2012-12-27 02:31:58 +01:00
41f2820781
allow to clear the global Asset registration ( #154 )
2012-12-27 01:45:52 +01:00
384ee68129
allow simple query-for-pipe again (revert)
...
while refactoring, I thought it might be a good idea
only to use Query objects. But in this special case,
most often you'd just want to pass in a simple query
with a literal query string. So this convenience shortcut
indeed makes sense.
2012-12-26 02:20:11 +01:00
873d6c3d5c
re-activate some tests
2012-12-26 02:01:26 +01:00
1f6e71272a
simplify fake config rules table access
...
- since std::map is itself a smart-ptr, there is no need for an indirection
- directly use QueryKey as table key
2012-12-26 01:13:36 +01:00
d73c2fa842
adapt the fake-config-rules to use the new Query::Builder
2012-12-25 01:16:19 +01:00
bccb7a11b5
restore defs-registry Unit test
2012-12-22 22:01:51 +01:00
1bde72cccf
implement another builder function; adapt OutputDesignation
2012-12-11 04:45:18 +01:00
08ff817afd
implement builder/accesor function; adapt StructFactory
2012-12-09 02:42:36 +01:00
d306bb3cdf
fix includes
2012-12-03 00:18:18 +01:00
a79ba2c507
refactor use of HashVal typedef ( #722 )
2012-12-02 23:03:37 +01:00
5dfe5e099f
refactor namespaces for query and defaults manager
2012-12-01 08:44:07 +01:00
626b1d4356
re-arrange query- rules- and resolver facilities within Core
...
the rules-based configuration and query system
will be located within the core application,
while the concrete implementation facilities
are expected to reside within the session or
maybe also the GUI.
This is kind of a 'rochade' refactoring to resolve
circular library dependencies and confine the parts
dependant on the session and MObjects to the Proc-Layer
And while we're in the middle of chainsaw surgery,
we'll concentrate further query-based facilities
alongside the config-rules within the App core.
2012-11-27 02:17:21 +01:00
dd8a88d095
adjustments and stubbing to get it past the compiler
2012-11-26 01:22:01 +01:00
b5a7055f29
move Query interface to Lib
2012-11-25 02:29:52 +01:00
baefd74ae7
prepare refactoring of the Query interface
2012-11-25 02:04:19 +01:00
62bfccd67b
cleanup: remove the old factory template
...
This template was a leftover from the early days
of Lumiera development and doesn't provide any
substantial value as an abstraction.
For the more intricate cases, we're using the
lib::MultiFact template, which allows to install
several "fabrication" functions at runtime
2012-10-14 01:30:08 +02:00
954ebefc4c
draft implementation of the PlanningStepGenerator
2012-10-10 05:20:24 +02:00
44435fd1db
clarify and settle the relation between Dispatcher and PlanningStepGenerator
...
the solution is to introduce a superinterface
and let Dispatcher augment that with the specific parts.
This way, the Job planning only has to rely on the
rather generic stuff (TimeAnchor, FrameCoord)
NOTE: this commit makes the whole JobPlanning machinery
compilable for the first time!
2012-10-10 05:20:23 +02:00
3300d00cc8
WIP working towards a solution for generating frame location sequences
...
..the Idea is to rely on some kind of service,
to break the cyclic dependency with the Dispatcher.
But I seem unable to find a natural location or
concept to house that service.
2012-10-10 05:20:23 +02:00
ce5b940d39
WIP consider how to seed the evaluation of a JobTicket
2012-10-10 05:20:23 +02:00
14e6086488
better do initialisation by ctor
2012-10-10 05:20:22 +02:00
30cf0b5718
implementation of JobTicket::ExplorationState
2012-10-10 05:20:22 +02: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
b52a1a8366
refactor JobTicket to remove the double layering
...
basically we had two lines of doubly nested capsules, due to
using the IterAdaptor template. Actually, the evaluation stack
within JobTicket can be considered an implementation detail and
thus doesn't require an iterator interface; the intention is to
use this through JobPlanning solely.
Thus this reworking removes the special iterator within JobTicket,
but retains the idea of exposing the "current" JobTicket through
a smart pointer or operator->()
work done during the FrOSCon travel
2012-10-10 05:20:21 +02:00
66defdc0cb
refactor JobPlanning to encapsulate all state mechanics into a "state core"
...
especially the exploration stack is pushed down
first successful definition of all the JobPlanning classes
just the framework of classes necessary to pass the compiler;
all implementation is still stubbed
2012-10-10 05:20:21 +02:00
a3bc69cc77
maybe a breakthrough on the job planning design quest?
...
why the hell is getting this design about right
such a chellenging task. Anyway, seems to be the
first step ahead after numerous failed attempts
2012-10-10 05:20:21 +02:00
e073d05f58
new header to define some class partially noncopyable
2012-10-10 05:20:20 +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
378ebe21f0
Fix naming of Iteration control API functions ( closes #410 )
...
comes in handy now, since IterStateWrapper uses a similar API
2012-10-10 05:20:15 +02:00
fa15a38016
draft JobTicket implementation datastructure
...
...but need an extension on our iterator helpers
to build a suitable functional datastructure
for generating Jobs.
2012-10-10 05:20:15 +02:00
3ef1fb7697
linked list helper template finished and passes test
2012-10-10 05:20:14 +02:00
ddff8b654b
WIP investigating the relation of Jobs, JobTicket and Closure in detail
2012-10-10 05:20:14 +02:00
4ceec90b9e
design decision how to invoke a job
...
without any trickery, we'll always get two indirections.
Thus, the decision is to turn the 2nd indirection
into a VTable call; this way, basically the JobClosure
also acts as job functor itself.
2012-10-10 05:20:13 +02:00
0320bc4b2c
considering the relation of Job and JobClosure
2012-10-10 05:20:13 +02:00
bb43c03ef9
stub all the job generating functions required for the dispatcher interface
2012-10-10 05:20:13 +02:00
79bd8b71e3
better treat the building of a continuation job separately
2012-10-10 05:20:13 +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
7941865d5d
implement anchor against current system time
...
using CLOCK_REALTIME for now
2012-10-10 05:20:12 +02:00
882bcf07ae
define stubs for accessing the wall clock time (->Backend)
2012-10-10 05:20:12 +02:00
aa01813f52
TimeAnchor: draft calculating the start delay for rendering
2012-10-10 05:20:12 +02:00
ee1450a81a
rectify frame dispatch invocation
2012-10-10 05:20:12 +02:00
393a447861
test setup: simulated build proecss results, mock model port
2012-10-10 05:20:12 +02:00
f8f011bb44
rework Job representation
...
make class Job a real subclass of the
job definition struct and turn the
JobClosure into a trampoline
2012-10-10 05:20:12 +02:00
1e54b5d3e6
stubbing some job functions
2012-10-10 05:20:11 +02:00
db68577b4a
clarify relation of Job, JobTicket and channel number
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
568fadd526
draft some steps of the dispatch operation
2012-10-10 05:20:10 +02:00
6772e94994
implement simple constant frame timings descriptor
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
3768791c76
considerations how to connect exit nodes to external outputs
2012-10-10 05:18:58 +02:00
288b737718
dummy playback: stub the required operations
2012-10-10 05:18:58 +02:00
2eb39704fc
test-driven brainstorming: how to use the dummy playback?
...
this is an idea how to test a test setup :)
2012-10-10 05:18:58 +02:00
7e7ecc5d51
draft: integrating an engine mock implementation
2012-10-10 05:18:58 +02:00
ec659b7141
a better way to inject the Render-Engine Mock
...
instead of (ab)using the Timings spect for a
runtime switch, better use the existing
MockInjector facility and thus turn the
mock engine mode into a global switch
2012-10-10 05:18:57 +02:00
24911dc990
solution to integrate an Engine Mock implementation
2012-10-10 05:18:57 +02:00
687102feb3
planning next steps: how to transform DummyPlayer into a real player
2012-10-10 05:18:57 +02:00
f5290a99a3
OutputSlot : simulated usage protocol passes unit test
...
OutputSlotProtocol_test
Some parts are still missing
- timings
_ initialisation
2012-01-08 03:06:32 +01:00
d732e7e211
Lumiera Forward Iterators: remove support for post-increment
2012-01-08 01:14:36 +01:00
8de4ecc8ac
add diagnostic messages showing each connection access
...
currently the problem seems to be we're
accessing the wrong connection...
2012-01-07 21:22:35 +01:00
73cfef69c8
fix some problems with OutputSlotProtocol_test
...
still WIP...
- there is a logical contradiction with the frame numbers
- somehow, in diagnostics, we access the wrong sequence instance
2012-01-07 06:40:21 +01:00
5cc034d26b
refactor ScopedCollection to use an init() function
2012-01-07 04:44:48 +01:00
e41065101a
switch OutputSlot to use the ScopedCollection
...
..hehe, makes the code way more sane
2012-01-06 03:16:22 +01:00
f047069284
rearrange OutputSlot ConnectionStateManager
...
... shape the various APIs more clearly,
make most functions protected
2011-12-31 20:33:50 +01:00
06c7c27252
merge diagnostic facilities
2011-12-31 06:49:31 +01:00
dbb63ffc08
perfer STATIC_ASSERT to check for suitable placement-New buffer size
...
Still incomplete, but already this small change
detected an error in the output-designation. Cough.
2011-12-28 06:42:18 +01:00
50885a065b
move asside lib/format.hpp
...
...to make room for a new more specialised header
2011-12-27 07:44:49 +01:00
24a8d6a926
generalised diagnostic context passes unit test
2011-12-24 05:57:28 +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
7fc8473337
fix some size_t printf specs (32/64bit problem)
2011-12-19 03:02:48 +01:00
fa0588b584
refactor to simplify generating a PlayProcess
2011-12-18 02:02:55 +01:00
c4bc53b6f6
how to pass a render configuration strategy when creating a new play process
2011-12-17 22:37:53 +01:00
6852a6feff
WIP refactor building of the active render feeds
...
RenderConfigurator becomes an internal strategy
controlled by the PlayService
2011-12-17 04:45:42 +01:00
bda0dea990
clarify the relation of PlayProcess, CalcStream and EngineFacade
2011-12-17 02:20:48 +01:00
76b24ce50d
WIP draft the building of a render CalculationStream
2011-12-10 03:18:48 +01:00
8362145039
spelling and comments
2011-12-10 03:13:45 +01:00
477b443191
implement diagnostic OutputSlot simple frame tracking
...
...should be enough to run tests against the OutputSlot interface
2011-12-09 01:03:02 +01:00
aef3d50ffd
implement basics of the diagnostic OutputSlot
...
...specific diagnostic facilities still lacking
2011-12-08 23:02:19 +01:00
77548e74c6
document a weakness of boost::hash for strings
2011-12-03 03:18:03 +01:00
7fd28e23eb
cleanup configflags to use uint instead of char
...
using char for those flag template parameters
was never a good idea. It won't save us any space
and makes debugging harder
2011-12-03 03:16:08 +01:00
d9f84a9bfd
clean up lib/meta namespaces
2011-12-03 03:15:59 +01:00
b9d1899486
cleanup: rectify Proc-Layer namespaces (II)
2011-12-02 17:50:44 +01:00
eb79a00cf4
cleanup: rectify Proc-Layer namespaces (I)
2011-12-02 16:10:03 +01:00
89a9202c6c
cleanup: remove precompiled headers
...
we don't need them and they even tend to
increase build times due to unnecessary
compound-includes at some core headers
2011-12-01 23:32:34 +01:00
7ba8ff432f
BufferProvider interface finished thus far.
...
simulated lifecycle passes unit test
2011-11-26 00:09:59 +01:00
55a77bdd73
factor out and treat the attaching of objects separately
...
this is an advanced feature not required
in the standard buffer usage cycle
2011-11-25 20:23:31 +01:00
ce25be6fa3
refactor relation of BuffHandle and BufferDescriptor
...
they are now tightly coupled and assumed to
work together; there is no need to relay half
of BuffHandle's interface through BufferDescriptor
2011-11-25 18:20:01 +01:00
d6b069fbbd
clean-up after refactoring
2011-11-25 17:29:06 +01:00
eed6d8cd1e
split out obsolete ChannelDescriptor for later refactoring
...
Meanwhile, BuffHanle became way more concrete,
making the separation of any kind of buffer or channel
type management concievable.
Thus: extract the obsolete ChannelDescriptor
and use switch at any location where the old
(superseeded) buffer handle is still referred
2011-11-25 17:16:33 +01:00
74702ebecd
address the next test...
2011-11-24 03:33:23 +01:00
2ae1e3c8f9
test/dummy buffer provider finished and passes test
2011-11-21 03:26:08 +01:00
d6de8c8d1a
implement some missing nits and bits
2011-11-21 02:28:44 +01:00
91b74ad7bd
implement missing parts of test/dummy buffer provider
2011-11-20 01:35:52 +01:00
3830ff7ce1
refactor the test/dummy provider, based on ScopedPtrVect solely
...
instead of using a vector directy, move the
additionally required functinoality in the
utility class. This forced me to adjust
the IterAdapter, to allow working with
STL algorithms
2011-11-19 17:51:08 +01:00
27449c1438
implementation details of a test/dummy provider
2011-11-18 01:23:50 +01:00
623bb401af
clarify implementation extension points of BufferProvider
...
decide especially how to pass on the implementation
defined data like e.g. pointers to storage extents
2011-11-15 04:47:31 +01:00
d1d0f66fa8
allow LocalKey to carry arbitrary pointers or hashes as payload
...
...used to piggyback opaque implementation data,
deliberately no typecheck here
2011-11-15 04:46:00 +01:00
6bc94cccb5
WIP refactor BufferProvider public and protected API
2011-11-14 01:43:29 +01:00
890b6e8366
WIP implementation details of diagnostic BufferProvider
2011-11-13 04:20:14 +01:00
ca0aa23479
BufferProvider default impl: attaching a type
2011-11-12 00:36:53 +01:00
fd94367b9e
stubs and changes to make the test compile
2011-11-11 23:33:59 +01:00
fe1ae51b49
WIP draft test for internal test buffer provider
...
a test to cover a helper for writing tests ;-)
2011-11-11 01:44:01 +01:00
f75e55a060
nail down a lot of OutputSlot implementation details
2011-11-08 02:59:56 +01:00
59dfb7c660
start drafting a (dummy) output slot implementation
...
this implicates a first attempt to build a
dummy buffer provider implementation.
Mostly just defining stubs here....
2011-11-07 01:57:33 +01:00
c8458ab397
improved diagnostics
2011-11-07 00:50:03 +01:00
a88ccd219d
extract the diagnostic BufferProvider into separate header
2011-11-07 00:07:53 +01:00
7ab7c8073d
remold OutputSlot implementation structure
...
Better solution where to place the extension points
to be implemented by concrete output systems
2011-11-06 02:37:22 +01:00
63dbc89b6f
draft implementation setup for OutputSlot baseclass
2011-11-05 16:51:24 +01:00
d6e88c85e0
finish buffer metadata; cover state transitions
...
BufferMetadata complete and working for now
2011-11-02 01:34:05 +01:00
931dc3f883
draft: automatically invoke an attached ctor/dtor functor
2011-10-30 05:35:36 +01:00
ccd130966b
finish and pass the first round of tests
...
still missing:
- implementation of a Mock frame
- automatical invocation of the TypeHandler
2011-10-30 02:19:10 +02:00
e7f0211711
better solution for calculating the Key for a concrete Entry
2011-10-30 01:17:31 +02:00
f849ca62d9
implement metadata storage (hash)table
...
not passing all tests yet
2011-10-29 02:41:56 +02:00
c91e703682
rename the core type BufferMetadata
...
makes the purpose more clear, and moreover
it matches the header filename
2011-10-28 01:18:22 +02:00
c8cdf914eb
review metadata storage, stub the actual access operations
2011-10-28 01:11:39 +02:00
9af0fb096f
WIP draft implementation of buffer metadata creation/storage
2011-10-24 02:14:08 +02:00
c4ff87c3a8
decide about the basic way to implement concrete buffer metadata
2011-10-24 01:03:56 +02:00
76a6407a5e
better formulation for the buffer metadata state machine
2011-10-23 22:07:39 +02:00
d48dc3b025
fix glitch in test definition
...
uncovered since rand() is now properly seeded
prior to each testsuite run
2011-10-21 02:41:20 +02:00
ca0ae9c120
stubbed relevant parts of BufferProvider and OutputSlot
2011-10-19 02:47:11 +02:00
991eec8185
draft test to simulate a complete buffer metadata usage cycle
2011-10-17 02:00:48 +02:00
1772659a00
start implementing buffer metadata records
2011-10-16 00:06:57 +02:00
3d859c8b53
buffer metadata hash keys implemented and tested thus far
2011-10-15 22:46:08 +02:00
28c555aac7
define a type handler for attach an object to a buffer
2011-10-15 05:05:30 +02:00
2c380b5f99
draft a dedicated test for buffer metadata keys
2011-10-15 04:12:51 +02:00
3256b7fe11
implementing the hash functions for the buffer metadata content fields
2011-10-12 03:47:34 +02:00
2477f2e682
outline of building a hierarchy of hash keys for buffer metadata
2011-10-09 16:03:51 +02:00
7ea9afd1bb
first attempt to implement buffer metadata...
...
...leading to refactoring
2011-10-09 04:20:56 +02:00
3acf804988
flesh out the buffer metadata API
...
functionality just stubbed still
2011-10-08 02:21:29 +02:00
4df45c44e9
BufferMetadata: some musing about how to access the Allocator
2011-10-06 21:55:00 +02:00
7459c0a41f
(cont) buffer metadate implementation
...
state transitions etc
2011-09-26 02:19:31 +02:00
5350ef6dbe
split off and test-cover simple typelist utils
...
these simple utils (length of typelist, maximum size
containment test) are mostly not used in conjunction
with the more elaborate typelist manipulatino utils.
Moreover, we lacked a dedicated unit test
2011-09-25 19:26:11 +02:00
057f32e15b
rename the typelist-manipulation header
2011-09-25 19:26:09 +02:00
db2b02f0c5
define a front-end for explicit allocations
...
...currently just defined by forwarding
to std::allocator
2011-09-25 19:26:09 +02:00
bc756e42d9
rewrite (planned) test to reflect the new metadata design
2011-09-25 19:26:09 +02:00
1ea3cba2f5
remold the buffer metadata into a PImple used by BufferProvider
2011-09-25 19:26:08 +02:00
8a2c94014c
extract buffer metadata handling into separate entity
2011-09-25 19:26:08 +02:00
7ef85065ba
impl: buffer provider metadata...
2011-09-25 19:26:08 +02:00
5b6ecbab1c
start diagnostic buffer provider implementation
2011-09-25 19:26:07 +02:00
cafe271830
stubbing of basic buffer provider functionality
2011-09-25 19:26:07 +02:00
ca615b9933
start stubbing some of the functionality planned thus far
2011-09-25 19:26:07 +02:00
32f71cba6d
more test-driven brainstorming
2011-09-25 19:26:06 +02:00
e1248d195a
move asside obsoleted code
...
...will be removed soon, when reworking ProcNode
2011-09-25 19:26:05 +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
7efde06569
some stubs to make it compile...
2011-09-25 19:26:03 +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
7adb8149db
back to test-driven brainstorming again
2011-09-25 19:26:00 +02:00
a199bff92b
BufferProvider as a frontend to buffer management
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
f46cc26851
factor out convenience shortcut
...
transform iterator and wrap result into IterSource
2011-09-25 19:25:59 +02:00
585adb88b6
Refactoring: use the output Feed as intermediary construction step
2011-09-25 19:25:58 +02:00
511d08adad
WIP: bilding a PlayProcess...
2011-09-25 19:25:58 +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
1b0cb56dcc
implement PlayOut subsystem and draft OutputDirector
2011-09-25 19:25:55 +02:00
971dea6f6a
PlayService: basic definition and link to facade
2011-09-25 19:25:55 +02:00
5e8a9b50d1
define asset::Viewer
2011-09-25 19:25:52 +02:00
b25d85e1dd
ProcNode hierarchy cleanup
2011-09-25 19:25:52 +02:00
ae36b2d941
stubs and adjustments to get it through the compiler
2011-09-25 19:25:52 +02:00
9004818d63
further planning the features of time::Change
2011-09-25 19:25:51 +02:00
c091b8e260
define Player / Output subsystem stub
2011-09-25 19:25:50 +02:00
20f95ca26f
draft the player facade interface
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
899ffa60ca
WIP create (planned) new entities for the player subsystem
2011-09-25 19:25:49 +02:00
4a53ef4cd0
Clean-up: change some long standing TODOs into tickets
...
makes the test logs way more readable
Believe me: no one will ever notice a "TODO"
entry in the logs, when it showed up for
more than some months.
Thus I've created some new tickets, mostly
tagged as "QA" and placed the ticket number
at the corresponding locations in the source
2011-09-25 19:16:33 +02:00
1aafb07a43
fix remaining issues turned up by switching the time handling
2011-05-20 03:39:07 +02:00
51fa9fe735
MediaFactory now using MediaAccessFacade to determine media Duration
2011-05-20 02:59:29 +02:00
12f43078a2
fix some names
2011-05-20 02:17:20 +02:00
a207a9f003
adapt Media-Access (+Mock) to include an overall Duration
2011-05-18 01:37:33 +02:00
042598f04c
adapt Core + Proc to use the new Time framework
2011-05-16 08:37:36 +02:00
b9861ef88f
WIP completely remove the old Time wrapper
2011-05-15 22:51:02 +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
2035405251
add time Mutation to adjust by offset
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
Christian Thaeter
e6cc7d3f99
WIP: autotools catchup, make it build again
...
Lumiera builds again, but some tests are missing and the new setup.ini
isn't loaded correctly which makes the plugin loader fail.
2011-04-28 13:14:29 +02:00
b843546922
cumulated build/release fixes
...
up to corresponding debian/0.pre.01-3
- compile issue (digxel.hpp)
- SCons missing config dependency on test-only
- 32/64bit fixes
2011-03-31 18:43:50 +02:00
e73bea379c
Adjust some Copyright headers
...
List of years instead of a range is better
2011-02-05 20:56:51 +01:00
faf579c4c5
enforce generally imutable time values
2011-01-22 23:20:12 +01:00
c3d0fda495
remove superfluous type qualifier
2011-01-19 11:32:38 +01:00
02653621f6
adapt the TimeGrid meta asset, so it can be published as Quantiser
2011-01-17 06:38:10 +01:00
2c90335b1d
WIP idea how to represent support for some timecode formats
...
concrete quantiser instances need a way to state
support for just some timecode formats -- yet I dont
want to push vectors aroud all over the place
2011-01-16 15:41:34 +01:00
aa5c78a30f
TimeGridBasics_test pass
2011-01-15 15:04:23 +01:00
240c5ac232
extract asset iostream display into separate header
2011-01-15 14:43:50 +01:00
a70376dc4b
grid asset passes first basic unit test!
2011-01-15 14:07:25 +01:00
8bc5bf88c9
fill in the missing parts to create a grid asset
2011-01-15 13:10:02 +01:00
ee0dcf3ba0
introduce generic grid API to subsume quantiser and grid asset
2011-01-15 03:49:35 +01:00
b66b778c42
implement and test simple demo quantiser
2011-01-13 03:36:11 +01:00
c40ba74bc6
WIP clarify ambiguity with fractional seconds
...
They are *not* intended to stand-in for gavl_time_t
Indeed, Time values should be handled as opaque
2011-01-13 03:36:09 +01:00
15214cc069
WIP start stubbing and defining time quantisation and timecode entities
2011-01-13 03:36:08 +01:00
f798428428
WIP start a unit test to cover simple time grids
2011-01-13 03:36:08 +01:00
04db5655f1
Implementation: building a simple time grid
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
459b1a061f
Autotools fixes
2010-12-18 02:22:25 +01:00
7fc462209e
some naming cleanup and namespace indentation fixes
2010-12-18 00:58:19 +01:00
3f1b7651e9
GPL header whitespace
2010-12-17 23:28:49 +01:00
e7191ed3c6
Planning Fixure: Segmentation datastructure ( #726 )
2010-12-13 03:22:11 +01:00
c4282560ce
fix two regressions
2010-12-12 01:53:23 +01:00
8a54e00b6b
ModelPort registry unit test pass ( closes #727 )
2010-12-11 23:40:12 +01:00
be6f555e04
Builder: registry for model ports coded up
...
passes compiler, but not yet unit test....
Needed to change asset::ID to encapsulate the embedded hash value
2010-12-11 01:52:02 +01:00
0464ca965c
fill in ModelPort and ModelPortRegistry definition stubs
...
making test pass the compiler
2010-12-10 18:12:56 +01:00
7043db90ee
introduce an explicit StreamType::ID
2010-12-10 17:39:39 +01:00
9c86deb18c
augment asset ID: automatic conversion, typed NIL ID constants
2010-12-10 15:29:43 +01:00
2827961385
WIP: test driven brainstorming about model port registry
2010-12-10 01:27:17 +01:00
8802beb753
rereading (and rewrapping) the builder/engine code...
...
started this a long time ago, then got sidelined....
2010-12-09 22:43:32 +01:00
ee56ab36a0
Definition of ModelPort, model port reference and -table ( #718 )
2010-12-05 02:46:37 +01:00
828206e6b1
OutputMapping unit test pass ( closes #651 and #716 )
2010-11-28 05:18:57 +01:00
c7794e7cbf
rewrite to retrieve default-pipe query from the defintion context
2010-11-28 02:16:39 +01:00
5ba7468f41
OutputMapping implementation complete, pending unit test
2010-11-28 01:43:55 +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
1e2d4d90f6
start using a typedef HashVal instead of size_t ( #722 )
2010-11-27 05:11:02 +01:00
f9bc292ac3
better use boost::operators for full equality comparison support
2010-11-27 04:21:39 +01:00
c3d29d1eb3
OutputMapping: interface refactorings to yield a cleaner structure
2010-11-27 03:59:07 +01:00
56c1387cd5
OutputMapping: finish interface draft (stubbed)
2010-11-25 05:35:50 +01:00