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
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
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
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
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
06c7c27252
merge diagnostic facilities
2011-12-31 06:49:31 +01:00
451b0abec5
spelling and typos
2011-12-24 05:48:31 +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
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
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
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
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
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
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