c6bc14375c
write a draft how I'd like to deal with joining threads.
2009-01-18 22:14:56 +01:00
054c652571
improve error handling when starting the GUI thread
2009-01-17 14:31:40 +01:00
Christian Thaeter
bb8ad9fbd5
move threads back into the backend
2009-01-16 02:18:58 +01:00
Christian Thaeter
a78ec21fea
ERROR_SET_* macros for different logging levels
2009-01-15 01:05:07 +01:00
aa8896a79f
merge resolution of some build/dependency problems
2009-01-14 12:31:20 +01:00
e8469d5552
chaninsaw surgery to resolve the most urgent dependency problems with lib
2009-01-14 12:15:13 +01:00
Christian Thaeter
d37bb17566
Add a context string to the error system
...
lumiera_error_set() now takes an optional extra string which can be used
to pass context relevant data along. This string gets copied into the
error state so one can easily create it by the tmpbuf_snprintf() facility.
Also a lot of places which define errors get fixed according to this.
2009-01-13 21:23:37 +01:00
5b68a39cc4
move threads from backend to liblumiera
...
otherwise lib and common would depend on backend
2009-01-10 21:50:03 +01:00
e64e9a19b6
Merge GUI loading and startup, incl opening of facade interface
2009-01-10 19:12:48 +01:00
b6fb135398
change error notification at subsystem shutdown to use just a string*
...
(this allows to memoize the error message and call the termination
handler outside the catch block)
2009-01-10 16:15:17 +01:00
3da9586824
Rewrite the GuiNotification service to operate in sync with bringing up the GUI
2009-01-10 15:29:11 +01:00
Joel Holdsworth
22c9e8b082
Merge branch 'master' of git.lumiera.org:/git/LUMIERA into gui
2009-01-05 17:59:23 +00:00
8d4bc62fbe
WIP start drafting a better InterfaceProxy handling
2009-01-04 15:21:04 +01:00
edb01ec8c6
Integration: Thread/sync, GUI-Plugin invoked in separate thread
2009-01-03 16:05:04 +01:00
Joel Holdsworth
8debd21363
Squished some warnings in lib/tree.hpp
2009-01-02 13:10:56 +00:00
2aab2491aa
deal with a race regarding argument passing
2009-01-02 08:02:27 +01:00
Joel Holdsworth
0f3b290b6d
Tweaked tree.hpp to improve documentation to work better in lumiera
...
doxygen
2009-01-01 12:34:39 +00:00
2f34637088
wire in the new threads implementation from backend...
2008-12-31 06:56:31 +01:00
8c892846e1
renaming etc...
2008-12-31 05:05:34 +01:00
Joel Holdsworth
e670f42a39
Opps - tree.hpp committed now
2008-12-30 23:07:16 +00:00
Joel Holdsworth
54ddf81afa
Moved tree into the lumiera namespace
2008-12-30 23:06:22 +00:00
Joel Holdsworth
2bea14748c
Added Kasper Peeters STL-like templated tree class to lib
2008-12-30 22:58:21 +00:00
4b3d567ca0
Switch Singleton template to use the threadsafe version (Fix)
2008-12-30 08:19:32 +01:00
75bdc877dc
reconsider synchronisation and switch some parts to instance based locks.
2008-12-30 08:19:32 +01:00
00a5e7028d
care for copy operations
2008-12-30 08:19:32 +01:00
33ae97b50d
switch in the new recursive mutex/condition impl from backend
2008-12-30 08:17:05 +01:00
075b3c8d6a
fix some warnings...
2008-12-30 07:28:34 +01:00
Joel Holdsworth
1802512371
Reinstated -Werror and fixed the ftruncate warning
2008-12-29 20:41:47 +00:00
Joel Holdsworth
90d14d12f7
Merged in LUMIERA master and gui branches
2008-12-29 19:13:58 +00:00
Christian Thaeter
66fb3afe83
Fix: new nobug renamed some macros
2008-12-29 02:52:46 +01:00
Christian Thaeter
532f609ea1
experimental thread implementation
...
* This spawns a thread, almost as proposed
* The condition variable for finishing is not yet implemented
* Most Parameters are ignored
2008-12-29 01:50:38 +01:00
9f9ef10c11
add a temporary impl for recursive conditions just for test
...
(can be removed when the implemented in the backend)
2008-12-28 02:05:04 +01:00
Christian Thaeter
23f89b027a
fixes for new NoBug (mandatory upgrade)
...
I managed to break some interface compatibility with NoBug finally. The
new NOBUG_ALPHA_COMMA macros shall stay there now.
2008-12-27 18:42:10 +01:00
Christian Thaeter
1a792ac328
add reccondition variable, condition vars which use a recursive mutex
...
not tested yet
2008-12-27 16:25:07 +01:00
Christian Thaeter
07cec0a44d
make the uses of pthread_once faster by checking the once var first
2008-12-27 16:25:07 +01:00
16adff318d
Comments
2008-12-27 07:44:28 +01:00
250e3ba4df
add a convenience shortcut for waiting on a bool member function
2008-12-27 06:58:13 +01:00
af8d70c2bc
include fix
2008-12-27 01:30:48 +01:00
4e4d6f9fb2
fix Automake
2008-12-27 01:11:17 +01:00
93c4a282cc
Merge object monitor locking
2008-12-27 01:04:20 +01:00
e921b1658c
error.hpp belongs to src/lib
2008-12-27 00:53:35 +01:00
cbbc298fe9
kill some warnings
2008-12-26 23:17:51 +01:00
bd2ead37d5
Refactoring V: get lifecycle of a class-based monitor correct.
2008-12-26 05:44:49 +01:00
2173698e75
splitt off the (somewhat problematic) class locking case into a separate header
2008-12-26 04:25:01 +01:00
eaedab90ea
Refactoring IV: move the (still problematic) ClassLock out of the Sync compound
...
(no semantic change, but better notation)
2008-12-26 03:47:12 +01:00
54e88e6914
Refactoring III: Recursive/Nonrecursive and Waitable as policy classes
...
pass test again
2008-12-26 01:50:32 +01:00
1ff7f0c656
Refactoring II: encapsulate the variants probvieded by the backend as base classes
2008-12-24 23:23:23 +01:00
Christian Thaeter
072ea60352
Fix: use implicit nobug flag for releasing
...
needs new NoBug as well, I should check my code before pushing it to master
2008-12-24 03:59:08 +01:00
be2daf64ff
whitespace
...
(trying to compare LUMIERA_MUTEX_SECTION and LUMIERA_RECMUTEX_SECTION)
2008-12-24 03:42:36 +01:00
Christian Thaeter
7e13ca33d5
Condition Variable makeover
...
* Improved the Documentation
* add an CONDITION_UNLOCK macro to exoplicitly unlock the condition mutex
* Add ENSUREs to check that the mutex is locked
* Fix the CONDITION_WAIT, takes the missing condition expression now
* Fix, document and improve SIGNAL and BROADCAST macros
* remove the signal and broadcast functions
2008-12-24 03:40:55 +01:00
2650216d9b
Refactoring I: better put the timeout explicitly separate
2008-12-24 03:31:35 +01:00
Christian Thaeter
c0bc3cffb7
add a LUMIERA_RESOURCE_CPU to the resource-collector
2008-12-24 00:38:19 +01:00
Christian Thaeter
c9d83d97c3
Moved the resourcecollector from backend to lib
2008-12-24 00:26:32 +01:00
36704a856e
basic wait/notify impl added, waiting-test pass
2008-12-23 04:27:11 +01:00
59a7270f5d
draft test for wait/notify, fails without the implementation
2008-12-23 01:32:01 +01:00
43521e3945
building block for the Condition part of the Monitor pattern
2008-12-23 00:03:04 +01:00
2b8cd00ab5
yet another renaming. call it "Sync"...
2008-12-22 17:00:15 +01:00
67e95884d5
preliminary implementation using pthread primitives. Locking test pass.
2008-12-22 07:23:48 +01:00
9240da002f
WIP
2008-12-22 05:02:52 +01:00
751e1be596
better invocation, get rid of the template parameter
2008-12-22 05:02:52 +01:00
c4df935113
add draft impl for Monitor storage; dummy impl running
...
todo: actually do any locking, improve handling of the forThis parameter
2008-12-22 05:02:52 +01:00
2512f04f3f
WIP yet another namespace change. Now refer it from the test
2008-12-22 05:02:51 +01:00
112cd475b7
WIP draft the basic pattern
2008-12-22 05:02:51 +01:00
d1e385f3f4
rename class Thread into Concurrency
...
it's not a thread abstraction, but a locking helper
2008-12-22 05:02:51 +01:00
Christian Thaeter
4fb8f5b69d
Makefile.am makeover, add CFLAGS and CXXFLAGS everywhere
2008-12-22 02:24:19 +01:00
Christian Thaeter
3363cfe8ba
mixed fixes of small issues (compiler warnings)
2008-12-22 02:23:11 +01:00
Christian Thaeter
1058454871
remove cuckoo from the build system
...
cuckoo hashing was replaced by the psplay lookups, it needs some
improvements to make it easier useable and better hash function for
strings. This will be done someday later.
2008-12-21 18:59:34 +01:00
c8465a1a38
Merge latest GUI model additions
2008-12-21 07:10:46 +01:00
Christian Thaeter
4699efcb5d
Some Makefile.am cosmetics
2008-12-18 20:23:46 +01:00
fb72d20812
Autotools fixes
2008-12-18 10:33:37 +01:00
6d66476383
move config, interfaces and pluginsystem to liblumieracommon
2008-12-18 08:54:33 +01:00
357c7f0d9f
further Makefile.am tweaks to make the tests compile again
2008-12-18 07:44:06 +01:00
e8d76cd022
rename error.cpp to exception.cpp and fix remaining problems
2008-12-18 04:51:58 +01:00
Christian Thaeter
3654473b75
WIP: Merge common into lib
...
* breaks lumigui linking
* test non functional yet
* tools cant not be linked because of cross dependency problems
2008-12-17 17:53:32 +01:00
Christian Thaeter
c2a6d6a387
turn 'lib' into a shared library
2008-12-17 00:34:12 +01:00
Christian Thaeter
84339a0f87
moved the config system and interfaces/plugins back to lib
...
in preparation for the shared lib transistion doing next
2008-12-16 23:56:28 +01:00
Christian Thaeter
9a1a1890e2
post rebase fixes
...
tests are still broken and will be fixed for the shared lib transistion
2008-12-16 19:54:48 +01:00
085c60e039
util to invoke two functors chained,
...
here to be used for decorating a given signal (callback)
2008-12-15 13:36:42 +01:00
41f9f54907
pass compiler and starts OK without doing anything
2008-12-15 13:36:40 +01:00
3693a5fa3d
draft outline for main()
2008-12-15 13:33:05 +01:00
98b3fcbad8
missing implementation
2008-12-15 13:33:05 +01:00
b14d711146
refactor Appconfig, split off lifecycle interface
2008-12-15 13:33:05 +01:00
3f6f1218fc
some typos
2008-12-15 13:33:04 +01:00
c567c57a58
reorganise NoBug global definitions and startup
2008-12-15 13:33:04 +01:00
2b5affa8b3
Appconfig doesn't provide Config functionality any longer.
...
This role of the Appconfig class is superseeded by the Config subsystem...
2008-12-15 13:33:04 +01:00
628be502e5
reordered some files to use the new include and lumiera directories
2008-12-15 13:33:04 +01:00
Christian Thaeter
085f3ec5a7
a upper limit of 16 iterations was not enough in ppmpl,
...
lets see how long 64 suffices
2008-12-15 13:33:03 +01:00
Christian Thaeter
80359fb155
documentation and nobug improvement for mrucache
2008-12-15 01:17:23 +01:00
80e1e382f4
merge new plugin/interface system, testsuite changes, documentation
2008-11-07 01:26:31 +01:00
f19cdc1ad6
automake fixes
2008-11-06 04:25:33 +01:00
Christian Thaeter
257b310699
add an error_peek function, fix prototypes
...
lumiera_error_peek() lets one investigate the error state without resetting
it.
2008-11-03 08:03:48 +01:00
57ccc289b0
comment, add to testsuite
2008-10-30 04:34:05 +01:00
b475fd0979
AllocationCluster passes test
2008-10-30 04:03:14 +01:00
a00edd2a84
cluster datastructure works, finally.
...
WIP still a bug somewhere in the pseudo-memory manager (de-allocation fails)
2008-10-28 06:07:23 +01:00
Christian Thaeter
28a5c5257a
Merge commit 'joel/gui' into master
...
* commit 'joel/gui':
Correct a liblumi to liblumiera
Added track tree support and added widgets to headers
Corrected a selection rendering bug in TimelineBody
Added linkage to the proc layer
Made GtkLumiera and WindowManager boost::noncopyable
Added the backend as a lib, and included the interface header
Showed some love to viewer panel
Changed the "delete" variable name to "del" to satisfy the C++ compiler
Renamed HeaderContainer to TimelineHeaderContainer
Conflicts:
src/gui/Makefile.am
2008-10-27 06:00:32 +01:00
Christian Thaeter
194e4b9fec
Complete the luidgen tool
...
calling 'luidgen' with a list of filenames replaces the word LUIDGEN in
each of this files with a octal escaped string consisting a unique
identifier
add luid formatter help macros to luid.h
let compilation of files which contain the word 'LUIDGEN' fail with a
hopefully self-explaining error message
2008-10-27 05:08:53 +01:00
Christian Thaeter
e61c25a34a
define an 'LUIDGEN' macro as uuid containing only zeros
...
This *must* be replaced by a real luid with a upcoming luidgen tool ASAP,
luids starting with zeros are invalid. For the time until this luidgen tool
is not ready we just leave it this way. Later it will be changed to give a
compile error.
2008-10-27 05:08:53 +01:00
6a1c33e5a1
create a lib header based on this solution
2008-10-26 22:35:01 +01:00
89fca1921d
WIP added simple usage test ... and made it compile,
...
but still a fundamental problem to resolve with the use of std::vector in this scenario
2008-10-24 06:06:24 +02:00
6bd0c84355
WIP added preliminary pseudo-implementation for the raw memory manager.
...
Actually this beast does just per object heap allocations, .... any takers?
2008-10-23 23:08:27 +02:00