7f68bc9020
integrate priority queue: lumiera namespace prefix; unit test pass
2013-09-13 05:44:58 +02:00
fc3cc1bc98
integrate priority queue: adjust imports and doxygen comments
2013-09-13 04:18:16 +02:00
87a84a931f
Import priority queue implementation from Cehteh's library
2013-09-13 03:28:50 +02:00
Christian Thaeter
df749271d0
cleanup in the priqueue test-code
2013-09-13 02:57:26 +02:00
Christian Thaeter
ff51ea54e6
Add a copy function to the priqueue
...
by providing a custom copy function one can adjust otherwise non-copyable
elements. This should be used cautionary because dereferencing elements may
poison the cache and thus have some considerable performance impact
(profile this)
2013-09-13 02:57:26 +02:00
Christian Thaeter
98d6ba3967
priqueue implementation
...
this adds a minimalistic priority queue based on a binary heap
2013-09-13 02:57:26 +02:00
bcfc1ed783
some bits to round up the job descriptor API
2013-09-08 19:19:02 +02:00
2b8ac2d071
render job dummy passes unit test
...
the basic job and job closure interface is mostly settled now.
We can define and invoke render jobs, and distinguish jobs
through a hash ID
2013-09-07 02:37:17 +02:00
7ba10619aa
draft unit test to cover the basic render job properties
2013-09-02 00:57:33 +02:00
ef535d9897
provide a dummy job for unit testing
2013-09-02 00:26:04 +02:00
7ba0ef92c8
stubs to complete the scheduler interface draft
2013-09-01 23:29:57 +02:00
3688cbe9a5
WIP: draft scheduler interface and diagnostics
2013-09-01 19:48:17 +02:00
bcbd05d7eb
reorganise some boost::format usage
...
using our util::_Fmt front-end helps to reduce the code size,
since all usages rely on a single inclusion of boost::format
including boost::format via header can cause quite some code bloat
NOTE: partial solution, still some further includes to reorganise
2013-09-01 17:36:05 +02:00
febce1282c
standard hash value for jobs (prerequisite for #786 )
...
this is mostly a diagnostic facility; the actual scheduling
of jobs doesn't rely on hash values.
2013-09-01 02:30:14 +02:00
bb0b4578ec
move job planning implementation to separate compilation unit
2013-09-01 02:26:46 +02:00
3932a820a3
Job and JobClosure now located in the backend
...
- adjust namespaces
- fix imports
- forward the failure reason to the JobClosure implementation
2013-08-30 02:00:35 +02:00
488efdf783
WIP: relocate job descriptor into backend (Ticket #926 )
2013-08-30 01:23:07 +02:00
79370ad494
FrOSCon: review of job and job definition
2013-08-24 15:53:05 +01:00
ecf65a70fb
start a draft to shape the high-level interface for the Scheduler
2013-08-19 04:12:03 +02:00
f9cd80560c
complilation fixes
2013-08-18 03:16:49 +02:00
86e76bf7fe
define setup and chaining of render planning chunks ( #920 )
2013-08-17 03:37:36 +02:00
d192c42faa
fill in the definition how a job can be created
2013-08-17 01:35:07 +02:00
2488478a12
file-level comment for time values
...
a recent discussion showed that it is rather likely
for a reader new to the whole time handling framework
to encounter this header first....
2013-08-13 01:27:37 +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
1f1d478da2
WIP: move building of the follow-up anchor into the new closure
2013-06-16 04:36:32 +02:00
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
9cfbc7bbe6
GCC 4.7 compilation fix
...
now builds for me on Debian-7 Wheezy 64bit
unqualified member functions in dependent base classes not found anymore.
Need to qualify either the class or the instance.
2013-05-10 00:48:25 +02:00
d512267575
navigation orientation indicator done ( closes #918 )
2013-04-30 02:40:21 +02:00
e0c5b18740
draft indicator (helper) to support tree navigation
2013-04-29 01:36:32 +02:00
3ef3886395
reduce log level of config system startup message
2013-04-15 03:43:42 +02:00
d953d4e6af
Library: convenience function to take addresses
...
just a wrapper based on 5749a621
While implementing this, also simplified the way
a const iterator can be defined for taking addresses
2013-04-15 03:07:15 +02:00
346acb1fec
WIP continue debugging this test...
...
Problem with the visitation is solved now.
But the tree is still not rebuilt properly
2013-04-13 04:30:04 +02:00
5749a6216c
Library: iterator wrapper to expose the address
...
...for the very specific situation when we want
to explore an existing data structure, and the
exploration assumes value semantics.
The workaround then is to use pointers as values.
2013-04-08 02:03:43 +02:00
8353ebf7d2
WIP drafting cointinued...
...
now drafting the call structure
which might be used for adding jobs
to the scheduler.
Passes compiler
2013-03-31 01:13:13 +01:00
4c312e2299
WIP reworked idea for this test
...
...attempt to build it based on the monadic iterator primitives.
Only problem is: need to find out relation between nodes
after the fact. In the real usage situation, this
is not a problem, since we have a state object
there, which can track the relation as it is established
2013-03-23 01:17:23 +01:00
16c9f5fd36
WIP musing about re-creation of tree visitation order
2013-03-17 03:14:05 +01: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
727fdd8691
add convenience shortcut to access a collection's last element
...
actually two accessor functinons first() and last(),
which automatically pick a proper implementation,
either by iteration or by direct access
2013-01-13 16:49:20 +01:00
740f3d0211
add detection for STL-like back iteration
2013-01-13 16:39:43 +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