Commit graph

3789 commits

Author SHA1 Message Date
961936ce9d Clang-3.0(#932): workaround for a known problem of Clang-3.0 (Debian/stable)
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20121203/069267.html

http://stackoverflow.com/questions/13521163/variadic-template-as-template-parameter-deduction-works-with-gcc-but-not-with-c

Clang aborts the template type deduction due to different size of the argument lists;
in fact the missmatching arguments can be filled in perfectly from the default template arguments.

As a workaround, we'll include an unused placeholder type parameter into the templated function,
to make the match succeed.
2013-09-27 23:28:29 +02:00
cb80d4001a Clang(#928): refactor OutputSlot implementation to resolve a scoping problem
Clang is more insistent when it comes to enforcing 'protected' visibility.
Since in this case the basic design can be considered sane and optimal, the
only (and obvious) solution is to nest the PIMPL into a default base class
for implementation; this mirrors the structure of the interface.
2013-09-27 23:25:51 +02:00
4ea20f0e74 Clang(#928): fix inconsistencies and compilation problems
Compilation with Clang 3.0 (which is available in Debian/stable) fails,
mostly due to some scoping and naming inconsistencies which weren't detected
by GCC. At some instances, Clang seems to have problems to figure out a
perfectly valid type definition; these can be resolved by more explicit
typing (which is preferrable anyway)
2013-09-27 23:23:13 +02:00
4f698f1bbb RFC: rework the SchedulerRequirements, promote to draft state
including some consequences taken from last developer meeting
2013-09-20 01:05:34 +02:00
d7b3445f62 DOC: update meeting and IRC transcript overview pages 2013-09-16 04:03:42 +02:00
b91b964d21 DOC: 9/2013 meeting sumary and IRC transcript 2013-09-16 04:03:15 +02:00
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
Christian Thaeter
76b2d2e5e0 Collection of a lot library worthy sources, many extracted from lumiera 2013-09-13 02:55:47 +02:00
93226715a4 small tweaks to the doxygen config 2013-09-12 22:30:27 +02:00
00ce775a84 rework and clarify the SchedulerRequirements RfC 2013-09-10 02:19:16 +02:00
d9690aa485 rework and polish the Documentation Structure RfC 2013-09-09 02:52:35 +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
c46883d4a8 RFC: Scheduler Requirements
initial draft of an RfC to discuss and define the
requirements for other parts of the application to relie on

note: this commit fixes a merge error; the RfC was lost
while combining documentation and code branches
2013-08-24 15:53:50 +01:00
79370ad494 FrOSCon: review of job and job definition 2013-08-24 15:53:05 +01:00
5cbc152833 before FrOSCon 2013: recent coding work and documentation improvements 2013-08-20 04:42:57 +02:00
3d03c19e04 combine recent documentation improvements done by Benny and Hendrik
resolved some edit conflicts in doc/user/intro/intro.txt
2013-08-20 04:35:32 +02:00
532a3614bd fix a broken RfC link 2013-08-20 04:18:36 +02: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
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
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
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
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