Commit graph

1871 commits

Author SHA1 Message Date
Michael Ploujnikov
8e3d4e7b7a fixed lumiera_threadpool_destroy() by using LLIST_FOREACH
added some checks to lumiera_threadpool_release_thread(), maybe too much
modified thread_loop() to return a known value - 0
added checks to lumiera_thread_new()
added a check to lumiera_thread_destroy()
made lumiera_thread_destroy() unlink the thread from a pool list
updated test case to match new debug messages
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
d6d81f2e44 added lumiera_threadpool_destroy()
added locking and checks to lumiera_threadpool_acquire_thread()
added a nobug flag to threads.c
added lumiera_thread_destroy()
added lumiera_thread_delete()
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
414b8b99c3 updated test passes
fixed problem with copying lists
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
75696986e4 test passes 2009-11-26 10:24:17 -05:00
Michael Ploujnikov
10f79290a1 add lumiera_threadpool_release_thread
make the test compile
change from type to kind
2009-11-26 10:24:17 -05:00
Michael Ploujnikov
9dd838b129 acquire() test started, so far, everything just compiles 2009-11-26 10:24:17 -05:00
Michael Ploujnikov
775f6cbb5d actually create or use a thread struct, still not associated with a pthread 2009-11-26 10:24:17 -05:00
Michael Ploujnikov
00eb4eda46 partial code skeleton 2009-11-26 10:24:17 -05:00
0186343909 finished implementation of QueryFocus (frontend handle) 2009-11-22 11:13:49 +01:00
4082ff919e implemented connection between QueryFocus und current ScopePath 2009-11-22 10:32:08 +01:00
12dc0e2c2d add unit test, write documentation. Closes #420 2009-11-22 07:26:51 +01:00
d90812e64b implement a stack of ScopePath frames 2009-11-22 04:36:14 +01:00
665eed5f1b new logging flag for the session 2009-11-22 04:35:37 +01:00
46eae1c03a add a refcount field (for intrusive refcounting) to ScopePath 2009-11-22 03:48:52 +01:00
36e342fc11 Implement ScopePath functionality. Closes #322 2009-11-22 01:16:33 +01:00
27390b5732 add query for path/location to ScopeLocator 2009-11-22 01:15:31 +01:00
451253ae8a utility to append elements from an Lumiera Forward Iterator until exhaustion 2009-11-22 01:14:27 +01:00
c328945cb4 commented the ScopePath API 2009-11-21 21:33:01 +01:00
ed86c97881 Defined/Stubbed all required ScopePath operations 2009-11-21 20:55:14 +01:00
b7987cf3ce define iteration on ScopePath as reverse iteration on the contained Scopes 2009-11-21 04:48:29 +01:00
b2849c6099 defined and implemented equality of scopes 2009-11-21 02:49:24 +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
11463da463 better use an enum for the ScopeQuery kinds 2009-11-18 04:53:49 +01:00
c01f774344 expose the new query-for-contents facility as session service 2009-11-18 04:23:46 +01:00
9514970b6c refactor most of the session-contents-query impl into a dedicated *.cpp 2009-11-18 04:11:27 +01:00
002a0a97e6 add remaining bits to get query-for-session-contents impl to compile 2009-11-17 03:01:18 +01:00
7d6fa03c51 allow for Goal subclasses to provide copy operations, while prohibiting direct copy 2009-11-15 16:28:42 +01:00
09c0cacee2 add comparison to c-string for Literal 2009-11-15 16:27:56 +01:00
34dc8fa4de mark for later high-level model extension (Ticket #414) 2009-11-15 01:09:21 +01:00
7dcb59333d WIP draft of the complete query-for-session-contents implementation 2009-11-15 01:08:29 +01:00
a10a237b90 rename "MO" --> "MX" to avoid confusion with MObject 2009-11-14 23:07:01 +01:00
017c668d7a WIP outline of the index query resolution 2009-11-13 16:32:22 +01:00
981ea94708 finished the PlacementIndex API. 2009-11-13 04:52:48 +01:00
d0c905b5c9 add an transforming iterator to the itertools 2009-11-13 03:26:20 +01:00
a86517bd4f extend the protocol of the itertools core, abstracting the increment 2009-11-13 01:02:31 +01:00
a1448ed6f6 WIP first attempt to remove the query-interface from PlacementIndex 2009-11-12 20:15:52 +01:00
d658415144 WIP about providing scope contents discovery, backed by the index 2009-11-12 02:15:02 +01:00
bfd97bd98e now SessManagerImpl can go down entirely on implementation level 2009-11-11 06:01:25 +01:00
5535a7a00e phase out the existing access functions, now superseeded by SessionServices 2009-11-11 05:44:58 +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
7da8844581 first steps towards using the new SessionServices access mechanism
add the necessary hooks and change the SessionImpl accordingly.
Still using the old access method for any real code
2009-11-09 07:35:08 +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
2765981db9 build a complete simplified mock Session/SessionManager 2009-11-08 20:13:11 +01:00
f1ce05ea9d clean up some overly clever definitions 2009-11-08 19:47:51 +01:00
aaf19f4d89 First draft regarding the access of session implementation services (Ticket #400) 2009-11-07 19:49:29 +01:00
6dbbc54247 document better how SingletonRef works 2009-11-07 17:37:37 +01:00
78f9b2b1c5 WIP refactor ContentsQuery to share implementation with a PathQuery facility 2009-11-07 02:49:55 +01:00
bdb8bc2c98 move PlacementIndex into namespace session 2009-11-06 19:27: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
Michael Ploujnikov
ce4e3608d0 make sure luidgen picks up the nobug cflags 2009-11-02 13:51:18 -05:00
8c7727704c Finish ContentQuery definition; relying on PlacementIndex 2009-11-02 07:37:15 +01:00
1c72cbb599 Iterator tools: (1) a filtering iterator 2009-11-02 06:06:43 +01:00
356fe8fd13 change the ContensQuery stub to fit into the QueryResolver in its current form
Actually, the implementation within PlacementIndex is missing.
Moreover, I think now that PlacementIndex shouldn't implement
QueryResolver directly.
2009-11-01 03:47:35 +01:00
2620c38ed9 documentation, close some tickets... 2009-11-01 02:02:21 +01:00
9ff7b1eaeb Implement registration of a resolution function. QueryResolver_test pass 2009-10-30 20:33:44 +01:00
f70f8c4e4a implemented the mechanism for dispatch-to-concrete resolution 2009-10-30 18:37:08 +01:00
f35b422316 SubID: add (preliminary) hash impl; unit test pass 2009-10-30 06:50:26 +01:00
df562a186f oops... fix a bug in Literal's hash function 2009-10-30 05:15:26 +01:00
006392f6ea yet another random test helper 2009-10-30 03:53:51 +01:00
ceb4d4b5ea reworked MultiFact passes unit test. Closes Ticket #376 2009-10-30 00:32:26 +01:00
1dccd37c70 re-order MultiFact implementation to get it to compile 2009-10-29 22:00:17 +01:00
d2721378d5 get QueryResolver to compile 2009-10-29 21:59:02 +01:00
54aa7b4afe WIP fixes and stubbing to get at compiling the MultiFact 2009-10-29 04:32:00 +01:00
3145064a21 change IterAdapter iteration control API to use free functions 2009-10-29 04:31:16 +01:00
0cef067c11 WIP adapt unit test and the argument-accepting MultiFact specialisation 2009-10-28 04:45:17 +01:00
2530e8c1a1 WIP try to create an extension point to MultiFact, allowing to accept argument(s)
sketch of an idea how to add an extension possibility
without messing up the basic MultiFact template
2009-10-27 05:13:38 +01:00
ec4b2eef00 WIP: test-driven brainstorming: how to build the query dispatcher table? 2009-10-26 01:39:25 +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
c3441ac26a WIP Query<TY> implementation draft... 2009-10-24 00:23:22 +02:00
452e1bb727 WIP draft an unit test detailing QueryFocus operation 2009-10-20 05:34:58 +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
474c293197 first shot at Ticket #355: use a default-constructed "invalid" PlacementRef
Making PlacementRef default constructible this way
would resolve the immediate problems; as any access
goes through an index lookup and thus will throw.
The bool check on this special ref yields false,
so this solution seems to fill the bill.
2009-10-18 01:30:43 +02:00
2e62a3b01b WIP continue design how to discover session contents 2009-10-17 21:31:03 +02:00
2ca89010d1 introduce pointer-to-PlacementIndex typedef 2009-10-17 21:29:16 +02:00
b03577ea3f document the stipulations lib::IterAdapter puts on his parameter types 2009-10-17 15:40:37 +02:00
3b1301be14 WIP stubbed some of the operations to implement on class Scope 2009-10-17 02:16:19 +02:00
cfc17e75ba refined and clarified planning of Scope and QueryFocus 2009-10-16 21:20:30 +02:00
9451a6888f start definition of new session::Scope interface 2009-10-16 03:13:57 +02:00
edbd54b062 Initial planning regaring the QueryFocus 2009-10-14 05:48:24 +02:00
193fd2d66b Start the new Session structure with Timeline and Sequences 2009-10-14 05:39:49 +02:00
cd51e5fef0 Proc Command handling frontend finished and usable for now
Additional convenience shortcuts and a bit of polishing.
Closes Ticket #300
2009-10-11 05:57:46 +02:00
c6d5f8a0b4 Proc Command framework: *first integraton round finished* 2009-10-11 05:57:46 +02:00
ae01f85452 replace existing implementation with CommandImplCloneBuilder 2009-10-11 05:57:45 +02:00
fdd940feba clone builder implemented; problem resolved according to test 2009-10-11 05:57:45 +02:00
e32044e453 refactor CmdClosure to accept a cloneBuilder visitor 2009-10-11 05:57:45 +02:00
bb7ff5e317 WIP draft of clone builder implementation 2009-10-11 05:57:45 +02:00
7812792f75 unit test showing current malfunction of UNDO state due to cloning 2009-10-11 05:57:45 +02:00
a4ad41a4e9 Idea how to solve the problem with cloning the UNDO functor 2009-10-11 05:57:45 +02:00
0bcbf7fee0 fix further problems uncovered by test; allow for anonymous cloning 2009-10-11 05:57:45 +02:00
17c7160f02 refactor CommandDef, get rid of the possibility of re-defining. YAGNI! 2009-10-11 05:57:45 +02:00
37cd451367 fix sloppy definition of less-than comparison, which caused malfunction of registry 2009-10-11 05:57:45 +02:00
2ad896027b why doesn't the reverse lookup return a Symbol?
damn! I have the vague rememberance that I had a reason for
not returning a Symbol. Anyway, here it goes...
2009-10-11 05:57:44 +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
c8e049cdea Command system basic unit test pass 2009-10-11 05:57:44 +02:00
5861597d7f smash a glorious ref-to-local object bug 2009-10-11 05:57:44 +02:00
4f1c034b58 CommandRegistry: function test pass 2009-10-11 05:57:44 +02:00
07de2a767b implement equality comparison on CommandImpl level 2009-10-11 05:57:44 +02:00
fea85acd0e equality comparisons on function erasure objects covered
...well, as good as possible, as boost refuses to implement this feature
2009-10-11 05:57:43 +02:00
231278bafe implemented comparison on function erasure, pending test 2009-10-11 05:57:43 +02:00
5068016805 WIP draft how the equality comparison on a function erasure could work 2009-10-11 05:57:43 +02:00
96d5ce74c4 Ticket #292: outline unit test explicitly covering equality comparisions 2009-10-11 05:57:43 +02:00
4c3fc9e64d WIP getting CommandRegistry_test to run
(equality on CommandImpl is still missing)
2009-10-11 05:57:43 +02:00
39f50b548c Ticket #266: simplify and combine the bind(...) mixin templates into a single header 2009-10-11 05:57:43 +02:00
2aac4e8ea0 remove spurious AcceptArgumentBinding mixin from ArgumentHolder
it's an implementation class, after all, and doesn't need a convenience API
2009-10-11 05:57:43 +02:00
abd23ae399 TypedAllocationManager (frontend) now in lib:: -- unit test pass 2009-10-11 05:57:43 +02:00
7bac890790 Test suite runner: pass exit code = 5 when having caught an exception 2009-10-11 05:57:42 +02:00
3835399c5f Testsuite: catch exceptions at the level of invoking individual tests 2009-10-11 05:57:42 +02:00
cb7c884293 handling patterns usable for now. Close #275 2009-10-11 05:57:42 +02:00
c3d767b444 try out a recursive approach for the extensible ID
more of a general feasability study... to be continued later
2009-10-11 05:57:42 +02:00
455ee34344 start brainstorming on #279 (extensible ID) 2009-10-11 05:57:42 +02:00
8136b0a4b8 HandlingPattern: basic unit test pass 2009-10-11 05:57:42 +02:00
248b87f344 Basic implementation of HandlingPattern settled for now
the ''real implementation'' (integrated with the ProcDispatcher)
is still missing, but it's enough to get the tests going
2009-10-11 05:57:42 +02:00
effbb49afb Dummy HandingPattern implementation for unit tests 2009-10-11 05:57:42 +02:00
bb45ad67d8 WIP change how the undo operation is invoked 2009-10-11 05:57:41 +02:00
7e4a984ed4 Finish MultiFact for now; use it to set up a table of HandlingPatterns 2009-10-11 05:57:41 +02:00
b7204e05ed removed all the magic and made it simply instance based 2009-10-11 05:57:41 +02:00
bc6f8eebda basically working draft; convoluted and with a lot of static magic 2009-10-11 05:57:41 +02:00
5910f21383 first draft impl regarding automatic installation of a singleton facotry into MultiFact 2009-10-11 05:57:41 +02:00
8ee76b1bfd configurable factory? test-driven brainstorming 2009-10-11 05:57:41 +02:00
8c21f21acc namespace cleanup: bring Singleton and Factory into lib:: 2009-10-11 05:57:41 +02:00
e9b95e47cf Command handling pattern? test-driven brainstorming 2009-10-11 05:57:40 +02:00
da8be6861c WIP some musing about opening the session interface 2009-10-11 05:57:40 +02:00
777e80dd64 use BoolCheckable instead of explicit operator bool() 2009-10-11 05:57:40 +02:00
9376bff71e race fixed, test pass 2009-10-11 05:57:40 +02:00
f6397ef11c implemented TypedCounter and TypedContext.
Test basically pass, but shows an interesting
deadlock from time to time
2009-10-11 05:57:39 +02:00
373f9a5724 fix Ticket #272 (synchronisation from const methods) 2009-10-11 05:57:39 +02:00
517fb8b200 multithreaded torture test for the (planned) TypedCounter 2009-10-11 05:57:39 +02:00
83cd7fd830 Extract the type-based counting into a separate facility 2009-10-11 05:57:39 +02:00
c921d927a2 provide API for counting the allocations (unimplemented) 2009-10-11 05:57:39 +02:00
022a961284 finish implementation of CommandRegistry 2009-10-11 05:57:39 +02:00
6a77bebb6a fix type for search in map 2009-10-11 05:57:39 +02:00
7fccecacce WIP using the reverse index to find out the Command-ID
this includes using a Command* as key within a std::map
2009-10-11 05:57:39 +02:00
4c9af94e1d improve and clean up the Command interface 2009-10-11 05:57:39 +02:00
8dc434a141 CommandRegistry implementation (...) 2009-10-11 05:57:39 +02:00
109cc4701c unit test to verify building a hashtable with Symbol keys 2009-10-11 05:57:38 +02:00
18c357eb4a start using Symbol datatype instead of a disguised char* 2009-10-11 05:57:38 +02:00
f278d4521c WIP: to make the ID type usable as hashtable key 2009-10-11 05:51:31 +02:00
c9f3a345dc WIP towards CommandRegistry implementation 2009-10-11 05:51:31 +02:00
4517766517 integrating branches
Merge commit '7f09f57cbde4932269c390da70c42a622cd1275f'
2009-10-11 05:50:27 +02:00
f313a0fb14 include GUI work
Merge commit 'lumi/gui'
2009-10-11 05:46:46 +02:00
3b1e2f00a8 rewrite simulated "subsystem". Hopefully closes Ticket #253
- clarify the meaning of run(true), run(fail), run(throw)
- do a real handshake between start() and the subsystem thread
- avoid accessing the SubsystenRunner after signalling termination
2009-09-29 02:38:07 +02:00
09b9f64842 diagnostics about captured state (on the CmdClosure API) 2009-09-21 03:33:56 +02:00
246c535569 Rewrite CmdClosure to actually invoke rather then to create a tr1::bind term
basically this should close Ticket #205  (some details missing)
2009-09-21 03:15:06 +02:00
925fa685b1 WIP change HandlingPattern to work on CommandImpl rather 2009-09-21 03:11:46 +02:00
fd7337f801 WIP drastically simplify command-mutation.
As we're using now a command frontend interface and
and CommandImpl frame in the Registry, most of the
functionaliry on Mutation's interface is superfluous.
Additionally, this separates Mutation and Closure.
2009-09-20 18:37:20 +02:00
d15903f1db resolve design mismatch, as spotted by Ticket #260
Hopefully this closes #260
2009-09-07 03:25:00 +02:00
f21366833d Merge latest work on the builder interface + NoBug adaptations
Merge commit 'bb8eb4055020c609245fe35a369c70e2acb1daf6' into session
2009-09-07 01:25:28 +02:00
27f437db8f autotools fix 2009-09-05 20:10:06 +02:00
6fc7aedd95 Merge NoBug-release related additions
Merge branch 'master' into builder
2009-09-05 19:16:13 +02:00
937df66774 apply Temp.Fix for Ticket #260 2009-09-05 19:14:36 +02:00
70b4b0ad41 Fix some more format warnings 2009-09-05 19:11:17 +02:00
1969adaf02 Integration of Builder/NodeFactory implementation draft. Stubbed to pass compiler 2009-09-05 18:15:58 +02:00
1430965798 WIP: implementation of a node fabrication code path 2009-09-05 04:10:51 +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
8c6eaa6394 WIP WiringSituation starts to become an important entity on it's own 2009-09-04 17:43:53 +02:00
Christian Thaeter
f73cc47da6 Fix all things which broke compilation with NoBug 200909.1 2009-09-04 08:53:03 +02:00
Christian Thaeter
d50d9a30f2 FIX: compiler warnings in mpool.c
Some gcc versions warn about type aliasing errors here, by using char*
this is fixed (and actually the right type here).
2009-09-04 08:02:16 +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
83067aa318 WIP: ...to do so, some considerations regarding the entrance point.. 2009-08-31 12:16:47 +02:00
ddb8805a73 WIP attempt to nail down a very simple example... 2009-08-31 01:32:53 +02:00
Joel Holdsworth
5bfdf73f7d Replaced gavl_time_ts with lumiera::Times 2009-08-30 16:26:27 +01:00
Joel Holdsworth
2c68137be4 Merge branch 'master' of git.lumiera.org:/git/LUMIERA into gui 2009-08-30 15:31:07 +01:00
2a54f92a98 WIP: implement creation of concrete wiring descriptor 2009-08-30 14:50:40 +02:00
209765def5 WIP: correct indentation, add some comments... 2009-08-30 14:11:14 +02:00
99310dc0af WIP: continue with considerations how actually to build and wire an individual ProcNode 2009-08-29 18:33:46 +02:00
6da18f76c0 re-read the code, some cleanup, define Tickets... 2009-08-29 16:13:42 +02:00
592c79b839 FIX after rebase... still WIP 2009-08-29 13:27:47 +02:00
3ef03bc3c0 WIP adjust fixture, segments and segmentation 2009-08-29 13:27:47 +02:00
9269db45cc WIP rename class Processor to RenderGraph (engine) 2009-08-29 13:19:43 +02:00
2b3fd7ef1b WIP backbone of the builder 2009-08-29 13:06:59 +02:00
091181bbbc spell checks (and read the code again...) 2009-08-29 13:06:59 +02:00
25a7d75ad9 WIP still trying to invent chicken and egg together.... 2009-08-29 13:02:26 +02:00
ff8be4493c WIP get rid of some cruft and placeholders 2009-08-29 13:02:26 +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
06000769e2 re-read the code concerning the pull()-call, fix obvious mismatches, comment, plan... 2009-08-29 12:23:41 +02:00
ba05a6b135 test coverage for the more exotic RefArray impls 2009-08-29 12:23:41 +02:00
8c6b6c5192 WIP further RefArray implementations 2009-08-29 12:23:40 +02:00
1c388287c9 simple vector wrapping implementation of the RefArray interface 2009-08-29 12:23:40 +02:00
1b4aa98cdf use the new stream type definitions to get ahead with the builder work 2009-08-29 12:19:26 +02:00
236e267af1 basic coverage for TypedAllocationManager 2009-08-29 03:10:34 +02:00
45c04b4463 re-visit the command impl allocation; add a quick-n-dirty implementation based on heap allocation 2009-08-29 02:16:28 +02:00
1533e5bd0d fix a problem with formatting arbitrary types; reneable the broken tests 2009-08-28 20:33:20 +02:00
08d4be3149 Fixes for building on 32bit system 2009-08-21 02:42:11 +02:00
4acb42d272 autotools fixes... 2009-08-19 15:36:03 +02:00
a845a4d234 unit test covering the cmd registry 2009-08-11 08:35:37 +02:00
0d4d3f25dc implement mising diagnostics 2009-08-11 06:32:29 +02:00
8925c9a73b see ticket 205 2009-08-10 01:33:26 +02:00
b9763b6c16 command frontend sort-of written now, pending integration test 2009-08-10 01:32:33 +02:00
5988b1d697 clean up command interface 2009-08-10 01:30:59 +02:00
9f40e4af9c implemented definition and access of handling patterns 2009-08-09 21:55:47 +02:00
2e58611e2d define session lifecycle event IDs 2009-08-09 19:22:07 +02:00
eada1aa745 now able to solve the store-as (clone) problem 2009-08-09 04:12:46 +02:00
da3cf5a6a6 rework the cmd registry to build on this 2009-08-09 03:48:19 +02:00
e178bd0811 completely factor out allocation/deallocation and placement new into a base class 2009-08-09 03:47:32 +02:00
ba2d4dc761 a handle may also be activated by sharing ownership with a manager 2009-08-09 03:38:44 +02:00
82aee60b14 WIP attempt to solve the clone problem (draft) 2009-08-07 17:13:21 +02:00
09a594d2c5 WIP: considerations for a store-as (clone) operation 2009-08-06 18:00:19 +02:00
a677e2edde second shot for implementing the binding: better the other way round 2009-08-04 02:25:50 +02:00
b6246cbb10 rename the operation "closeArguments", which is more to the point 2009-08-04 02:24:47 +02:00
efd6e99c99 first shot at solving the problem how to bind later on 2009-08-04 01:30:50 +02:00
155254dd9b build new cmd impl object within registry 2009-08-03 18:17:41 +02:00
59f42c28ef get type-id string 2009-08-03 18:15:08 +02:00
b3cd834d9e try to get generated code a bit more readable 2009-08-03 17:59:13 +02:00
853aff1228 fixed and stubbed until it passes compiler again 2009-08-02 20:57:04 +02:00
327cbc822a WIP extended binding and invocation to support the convenience shortcuts 2009-08-02 20:55:43 +02:00
4236d0649a WIP: implement the basic operation of execution pattern 2009-08-02 18:00:03 +02:00
f2126c0764 WIP partially get new proc-layer command impl through the compiler 2009-08-01 23:57:12 +02:00
8971d667cf WIP more implementation... 2009-08-01 17:14:27 +02:00
c2d9a02303 WIP some more nailing down of implementation details 2009-08-01 02:18:01 +02:00
c9e143995e WIP phase out the superfluous static access functions 2009-07-30 20:50:57 +02:00
655177921f WIP this might solve the race condition 2009-07-30 03:57:19 +02:00
eaa4adddde WIP more implementation drafting... 2009-07-29 16:55:15 +02:00
19dd606f54 WIP some implementation drafting... 2009-07-27 02:38:53 +02:00
3ebb8d0285 WIP and more stubbing... 2009-07-26 02:00:47 +02:00
c85eb20cee allow bind functions with return value 2009-07-26 02:00:00 +02:00
1db718c2b3 WIP more stubbing... 2009-07-25 19:21:50 +02:00
299c316ad4 Fix: containment check should take const args 2009-07-25 19:20:21 +02:00
76b6f5d374 ooops, forgot some copy-n-pastes 2009-07-25 17:51:59 +02:00
211a2dabdd WIP stubbing undefined operations... 2009-07-24 17:50:14 +02:00
c5f781596e reorganise the intermediary command def context classes 2009-07-23 03:47:27 +02:00
d80f0cfb8d WIP start some drafting 2009-07-21 04:49:00 +02:00
c85d1d3cd8 ArgumentHolder finished, low-level integration test pass 2009-07-20 07:03:18 +02:00
63bad834c1 comparisons and state detection now working as expected 2009-07-20 05:09:46 +02:00
33757bbac3 why the hell doesn't boost provide functor comparison operators..
(yes I know why: it can't be implemented 100% correctly)
2009-07-20 04:21:24 +02:00
e879e0c81b implemented argument and memento comparisons (doesn't pass test yet) 2009-07-19 19:13:25 +02:00
f73c938850 ArgumentHolder reworked to use InPlaceBuffer; now passes basic tests 2009-07-19 08:32:49 +02:00
7f44de24d7 collecting some formatting & diagnostics utils here... 2009-07-19 08:03:54 +02:00
5784bd2819 Fix: use boost::operator! for binding expr. to avoid infinite recursion 2009-07-19 06:24:36 +02:00
5f0c9e209e remove any use of boost::function in favour of <tr1/functional>
this resolves some long standing problems with ambiguous placeholders
closes Ticket #161
2009-07-19 05:47:36 +02:00
3ecd8047df assertion to guard buffer size limit 2009-07-19 00:41:37 +02:00
584878e0f8 yet another variation of managing an object in-place 2009-07-18 22:07:46 +02:00
6510155e76 back on route: trying to get the ArgumentHolder to fly... 2009-07-18 19:36:32 +02:00
3f8d82a13f Victory! bashed the iter-adapters and the ScopedPtrVect into submission, finally. 2009-07-17 20:22:48 +02:00
165cfc7fcd WIP allow some conversions, attempt to define the const_iterator properly 2009-07-17 04:13:14 +02:00
4f5fca6858 now able to implement ScopedPtrVect iteration properly 2009-07-16 19:36:01 +02:00
a0187847da reworked IterAdapter, added RangeIter for STL ranges. Should do for now 2009-07-15 07:26:49 +02:00
b2f72ef0fc IterAdapter now passes test, but is still rather uggly... 2009-07-14 06:29:04 +02:00
e2cd4aba8a fix name, add test for postfix increment 2009-07-13 01:25:24 +02:00
1a69026acb spelling fix 2009-07-13 01:16:40 +02:00
60cf9e8c9e trying to implement a simple iterator adapter working
(oops, didn't expect this to be so difficult...)
2009-07-13 01:16:30 +02:00
fa3d596a59 helper for accepting arguments passes unit test 2009-07-12 23:21:37 +02:00
30db042b16 add component access to the time wrapper (quick'n dirty) 2009-07-12 22:51:04 +02:00
66f7b1be17 WIP impl.draft for the helper... 2009-07-12 20:08:35 +02:00
b392d6bf84 WIP design a helper for accepting the arguments to bind 2009-07-12 19:30:55 +02:00
accaba4904 WIP impl draft for ArgumentHolder 2009-07-12 18:55:33 +02:00
6ef1aca3a4 test driven brainstorming 2009-07-11 20:06:35 +02:00
892f382f0f Ticket #182 2009-07-11 19:23:20 +02:00
9aa5ba560c finish and tidy up control::Mutation, unit test pass 2009-07-10 19:04:01 +02:00
e892a0087a remove this bool check...
seems to be overengineering! The same information can be easily accessed throught the ArgumentHolder
2009-07-10 19:00:40 +02:00
6bd1e8e179 tidy up and finish the MementoTie + unit test 2009-07-09 20:47:21 +02:00
9e95ec8b60 MementoTie unit test pass 2009-07-09 18:35:22 +02:00
2eb8b763d6 got the helper working (prepending a binder to an argument position) 2009-07-09 04:41:44 +02:00
c7b6165c6c WIP resolved the simple mismatches, but still... 2009-07-08 05:36:02 +02:00
2348a5af2b WIP draft capturing mechanism implementation, using the new tools and helpers... 2009-07-06 05:26:31 +02:00
c8c577c4cc WIP factored out another helper, not yet tested... 2009-07-06 05:25:33 +02:00
2462dee5ca issue resolved, tests pass, finally (whew) 2009-07-06 02:25:19 +02:00
c3b8d39507 refactoring into two distinct concepts. maybe solution? 2009-07-05 22:05:11 +02:00
e2bb2c440c use OpaqueHolder to solve the problem with the function type erasure...
...tried to use 2 policies, but doesn't work correct (and is uggly)
2009-07-05 03:38:33 +02:00
4d1f45fc43 activate the new test, some comments 2009-07-05 02:26:59 +02:00
6e3bfb08e6 OpaqueHolder implemented and passes unit test 2009-07-04 19:30:54 +02:00
077d3d176e WIP implementation draft 2009-07-04 04:35:17 +02:00
3cc49d0f68 need to factor out a special holder class to solve the problem with the empty check 2009-07-04 03:32:15 +02:00
c48f9086b7 extract util: isSameObject (bare ptr comparison) 2009-07-04 02:43:49 +02:00
98510cc943 rename and clean up some headers 2009-07-04 00:24:55 +02:00
b65658c10d try to fix a failing test (not really fixed yet) 2009-07-04 00:22:16 +02:00
d13d461a9c revamp namespace func. Finish excursion on function handling 2009-07-03 14:31:52 +02:00
b7be61c4e6 composition now working 2009-07-03 13:49:12 +02:00
31e9d59d80 WIP draft solution for next task 2009-07-01 04:47:52 +02:00
8d8f184ede check more cases, incl. function pointers 2009-07-01 03:23:26 +02:00
67e5779d24 now also able to close the last function argument 2009-07-01 02:29:11 +02:00
81d0e133c8 new additions in this area now reasonable covered (closes #142) 2009-07-01 00:43:19 +02:00
ca807205f9 cleanup/refactor simple type seq handling, fix broken Split template 2009-06-30 04:54:50 +02:00
320f984270 got partial application working, at least in the "front" case 2009-06-29 06:34:20 +02:00
a19892ac6a WIP some steps towards a solution of the memento binding problem 2009-06-29 06:33:42 +02:00
6029c2c4e2 better name it Splice, and extend the capabilities a bit 2009-06-29 03:05:50 +02:00
03c9edce49 factored out yet another little helper, incl unit test 2009-06-29 02:03:30 +02:00
14f3641f9b helper: initialise a tuple from an existing sub-tuple 2009-06-28 20:41:33 +02:00
51712f218d still fighting to get capture fun and undo func bound together 2009-06-28 15:27:27 +02:00
8ea07bda7a use the new bool conversion mixin to implement check for valid functor 2009-06-26 19:04:22 +02:00
b45cd49c8b separate header + unit test for this bool check mixin 2009-06-26 18:50:30 +02:00
5291f6e41a move the member pointer to the current stack frame...
hopefully the optimiser will remove it completely ;-)
2009-06-26 17:13:36 +02:00
a30461780b this way it works, but would cost additional storage.... 2009-06-26 16:38:37 +02:00
Joel Holdsworth
b8182f4341 Removed the toolbar 2009-06-26 11:14:01 +01:00
daeff6f5fd WIP: how to define the bool conversion / validity check for the function holders? 2009-06-26 05:27:54 +02:00
e91cdd39e9 stubbed and commented out to get it to compile 2009-06-26 05:27:24 +02:00
5ab8c126e0 WIP compilation fixes and stubs; split off MementoClosure (incl. separate unit test) 2009-06-24 06:38:33 +02:00
69d6bad1f4 WIP brainstorming about a way how the extended memento capturing closure might work 2009-06-24 05:51:02 +02:00
2aee99f2f3 WIP working out the details of Mutation and UndoMutation 2009-06-23 05:54:54 +02:00
909c7a1715 now core operation of CmdClosure passes compler! 2009-06-22 06:18:13 +02:00
61f8c1814d tuple test pass 2009-06-22 06:05:32 +02:00
db9ef808a5 refactoring to solve consistency problems uncovered by the tests 2009-06-21 19:52:33 +02:00
c3768b93a1 function closure utils finished and pass test 2009-06-21 08:38:24 +02:00
231834d2e9 basic tuple creation and outline of the remainder of the test 2009-06-21 02:03:22 +02:00
ad7c326c9c got basic diagnostics for type tuples working 2009-06-20 23:18:02 +02:00
294c254f29 Fix instantiation of Tuple datastructs 2009-06-20 23:17:22 +02:00
0117e4bce5 start a function-closure unit test... 2009-06-20 18:41:18 +02:00
95f0b26e38 start a type tuple unit test... 2009-06-20 18:06:07 +02:00
1620b8dcef WIP fixes to Apply<N>, but yet doesn't work... 2009-06-20 09:32:22 +02:00
b26de14dcf WIP how to apply the param tuple? 2009-06-20 09:22:33 +02:00
bc94f299e2 hey... now storing the operation is almost effortless! 2009-06-20 07:13:20 +02:00
a28c05877f test pass (resolves Ticket #174) 2009-06-20 06:11:09 +02:00
079030818d draft a test to sharpen the idea of the function holder (erasure) 2009-06-20 04:43:52 +02:00
a565bfef73 some header-renaming 2009-06-20 01:28:47 +02:00
006c29c625 Idea how to store an unspecified functor to be used later as Command implementation 2009-06-20 00:00:29 +02:00
f358f548d1 draft version of CmdClosure and Mutation interface now passing compiler 2009-06-19 19:11:33 +02:00
e951c468a7 WIP: header rename 2009-06-19 14:47:37 +02:00
4307191369 merging latest bugfixes
Merge branch 'master' into session
2009-06-19 14:36:22 +02:00
0ab5a92629 WIP: test-driven brainstorming... how to capture state and params. 2009-06-19 05:57:06 +02:00
Christian Thaeter
52ac7bdc5e FIX: bogus pointer dereference causing gcc to barf
gcc (GCC) 4.2.4 (Ubuntu 4.2.4-1ubuntu3) reported:

./src/lib/mpool.c: In function ‘bitmap_bit_get_nth’:
./src/lib/mpool.c:119: warning: dereferencing type-punned
 pointer will break strict-aliasing rules
2009-06-19 04:22:29 +02:00
8dfc234729 small fix: wrong log formatting spec detected by valgrind 2009-06-19 03:21:43 +02:00
fba135c746 Merge backend and testsuite improvements 2009-06-19 01:19:20 +02:00
37c0175bd1 fix crash on closing lumiera, in case of starting multiple threads 2009-06-19 00:45:08 +02:00
3f9902f682 fix possible race in dummy player: sync on tick thread termination 2009-06-19 00:40:31 +02:00
d1b425aba9 finish and tidy the extracted headers 2009-06-17 06:55:18 +02:00
9d04f48c51 WIP: further split the headers 2009-06-16 12:07:49 +02:00
ab4b4c71e6 WIP: start extacting new headers 2009-06-16 11:39:36 +02:00
441cb6b9e2 WIP try to solve the problem of closing a function with arbitrary args 2009-06-15 03:47:05 +02:00
7741b50b91 WIP rewrote the Sub-Tuple extractor into a simplistic Tuple type 2009-06-14 19:40:35 +02:00
b937bd08ae WIP: parameter closure brainstorming 2009-06-14 05:38:35 +02:00
246529bae9 concpet draft of parameter type extraction and checking works (i.e. compiles) 2009-06-10 05:00:01 +02:00
e3da082016 WIP idea to allow arbitrary command parameters 2009-06-10 03:42:23 +02:00
102e96891b fixing, stubbing, and some chainsaw surgery to get half-finished code through the compiler 2009-06-09 09:05:19 +02:00
3a7de1654a WIP: create a "scrapbook" test for trying out some ideas 2009-06-08 21:29:09 +02:00
ba37045b48 WIP: interface/framwork skeleton 2009-06-08 04:50:29 +02:00
f1827ea753 WIP: test support macro for exception check 2009-06-07 03:22:08 +02:00
2731e34c3e WIP: test driven brainstorming: basic MObjectRef behaviour 2009-06-07 00:45:55 +02:00
091c3a20ef fix indentation 2009-06-06 23:58:44 +02:00
Christian Thaeter
64c1238445 FIX: mpool: macro for constants depending on host wordsize
This might fix http://issues.lumiera.org/ticket/136 I have no 32bit
system to validate this.
2009-06-06 16:05:34 +02:00
ee7f2d6c0f WIP: replace direct ctor call by an embedded factory member 2009-06-06 07:12:09 +02:00
90dffdc9d2 some cleanup and renaming 2009-06-06 06:55:13 +02:00
815f8569ce WIP: accessing the default PlacementIndex (within the Session) 2009-06-06 06:18:37 +02:00
fa31f3736e WIP some details regarding PlacementRef 2009-06-06 04:23:11 +02:00
4ee0b18731 Fix: activation of MObjectRef, exception safety 2009-06-06 04:04:33 +02:00
638022c07f WIP: add run-time type check API to Placement 2009-06-06 04:02:08 +02:00
d740d9734d re-enable test for waiting on thread termination 2009-06-05 05:35:24 +02:00
b6d22bb2e0 fix: condition for signalling thread termination is optional 2009-06-05 05:04:45 +02:00
e0ff915987 adapt thread-wrapper.hpp to backend thread API change 2009-06-05 05:00:53 +02:00
Christian Thaeter
58f1fbe3a8 mpool: completion
fix tests, add some benchmarks
finished documentation, cosmetics, cleanup
2009-06-04 18:11:45 +02:00
Christian Thaeter
92271ba1c1 mpool: add an alloc_near() function which takes a explicit hint for locality 2009-06-04 18:11:44 +02:00
Christian Thaeter
0dc0d18703 mpool: ldiv() division bites the dust in favor of some bitops
before:
 1,747,160,336  PROGRAM TOTALS
after:
 1,371,806,087  PROGRAM TOTALS
2009-06-04 18:11:44 +02:00
Christian Thaeter
9ed817df97 mpool: precalculate cluster size to avoid excess recalculations
Callgrind before:
 1,963,501,246  PROGRAM TOTALS
After:
 1,747,160,336  PROGRAM TOTALS
2009-06-04 18:11:44 +02:00
Christian Thaeter
29a1a6a7a0 mpool: some pending cosmetics an trace points 2009-06-04 18:11:27 +02:00
Christian Thaeter
2a9d59ccd0 WIP: pooled allocator, initial version
* creating and allocating, freeing elements
 * live objects will be destructed when a mpool gets destroyed and a
   destructor was set up
2009-06-04 18:10:25 +02:00