Commit graph

494 commits

Author SHA1 Message Date
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
102e96891b fixing, stubbing, and some chainsaw surgery to get half-finished code through the compiler 2009-06-09 09:05:19 +02:00
f1827ea753 WIP: test support macro for exception check 2009-06-07 03:22:08 +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
90dffdc9d2 some cleanup and renaming 2009-06-06 06:55:13 +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
Christian Thaeter
062dbfe82f Merge commit '99b5f8'
* commit '99b5f8':
  adapt the Sync template
  Add reccondition to threads, make its functionality complete
  fix some includes for new mutex/recmutex headers
  weed out reccondition bugs/typos
  New condition and reccondition implementation
  split mutex.h again into mutex.h and recmutex.h
  typo fix in mutex.h
  rename casing of RecMutex to Recmutex to be consistent
  store lumiera_rwlock in sectionlock
  store a lumiera_mutex in a sectionlock, looks cleaner
  add check to chained locking validating that the parent lock is held
  rwlock makeover, locksections etc...
  error code changed to LOCK_DESTROY
  fix: forgotten backcasts in mutex.h
  new mutex and recmutex implementation (breaks sync.hpp for now)
2009-06-03 20:20:41 +02:00
Christian Thaeter
8f2333a786 Merge commit '59de53b25a78cd330c0c6e0f637e8cf7618da4'
* commit '59de53b25a78cd330c0c6e0f637e8cf7618da4':
  llist: add an generic void* to the compare, sort and search functions
  let llist_init return the initialized node
2009-06-03 18:47:56 +02:00
99b5f8d44d adapt the Sync template 2009-06-03 18:22:11 +02:00
Christian Thaeter
7758d76c7b weed out reccondition bugs/typos 2009-06-03 18:22:10 +02:00
Christian Thaeter
d91620a60f New condition and reccondition implementation
Should be working but not thoroughly tested still, docs not complete
2009-06-03 18:22:10 +02:00
Christian Thaeter
4f29f302b2 split mutex.h again into mutex.h and recmutex.h 2009-06-03 18:22:10 +02:00
Christian Thaeter
ec62ca073b typo fix in mutex.h 2009-06-03 18:22:09 +02:00
Christian Thaeter
30a117c1d8 rename casing of RecMutex to Recmutex to be consistent 2009-06-03 18:22:09 +02:00
Christian Thaeter
93abe657c8 store lumiera_rwlock in sectionlock 2009-06-03 18:22:09 +02:00
Christian Thaeter
5b82f3355b store a lumiera_mutex in a sectionlock, looks cleaner 2009-06-03 18:22:09 +02:00
Christian Thaeter
cafcffd4b1 add check to chained locking validating that the parent lock is held 2009-06-03 18:22:08 +02:00
Christian Thaeter
5c2ac96f35 rwlock makeover, locksections etc...
The CHAINED variant is not tested, what could go wrong anyways :)
2009-06-03 18:22:08 +02:00
Christian Thaeter
ca0250c018 error code changed to LOCK_DESTROY 2009-06-03 18:22:08 +02:00
Christian Thaeter
cf664ca970 fix: forgotten backcasts in mutex.h 2009-06-03 18:22:07 +02:00
Christian Thaeter
a115759128 new mutex and recmutex implementation (breaks sync.hpp for now)
prepares that chained sections if different kinds can be mixed
makes recmutexes typesafe
improves nobug tracking
2009-06-03 18:22:07 +02:00
Christian Thaeter
59de53b25a llist: add an generic void* to the compare, sort and search functions
This allows the user to pass some extra data along, which improves the
usefulness in certain cases.
2009-06-03 18:22:01 +02:00
Christian Thaeter
85b1297b4a let llist_init return the initialized node
This makes it possible to use the init without a temporary variable:
 llist_insert_next (llist_init (foo), llist_init (bar));
2009-06-03 18:19:56 +02:00
Anton Yakovlev
87e528bd58 Cyclic L1-list. Implements almost the same set of operations as for L2-list
(except those, which reverse enumeration of elements).
2009-06-03 18:12:35 +04:00
e8c25fca0a supply test definition 2009-05-31 02:41:00 +02:00
e0ad992f30 spinn-off: collecting some frequently used bits to support unit testing 2009-05-30 23:49:02 +02:00
014b6c0b49 intend to use the time wrapper 2009-05-29 19:03:34 +02:00
940d63a9fa time wrapper minimal test coverage 2009-05-29 18:36:37 +02:00
dedb70aac9 @Joel: a simple convenience wrapper for gavl_time_t 2009-05-29 18:36:37 +02:00
efa7b4717c rework placement to contain a LUID, and to deal with inheritance according to the concept draft 2009-05-29 07:10:54 +02:00
85a9c99e52 hash ID: add trivial implementation + impl based on LUID 2009-05-24 05:14:11 +02:00
3b8a851722 add equality 2009-05-24 01:46:00 +02:00
2bb64a23fa augment test, rework access to the hashID, template on hash impl 2009-05-23 05:13:51 +02:00
e5d2042190 WIP rename and reorganise hash ID, now focussing on the Mixin 2009-05-23 03:43:39 +02:00
bac5da777b WIP document the concept of the hash ID, get rid of the uggly cast 2009-05-22 03:41:58 +02:00
020636b90a WIP extract the hash ID draft into separate header & test 2009-05-22 02:40:20 +02:00
8f8831c8b3 planning index structure.. 2009-05-09 17:32:29 +02:00
9b3ca200e7 considering new facilities for referring to placements 2009-05-09 03:08:38 +02:00
0e4df5611a time wrapper minimal test coverage 2009-04-24 21:48:38 +02:00
3ae3e36f3f @Joel: a simple convenience wrapper for gavl_time_t 2009-04-24 21:48:38 +02:00
Christian Thaeter
b8d3e841d0 forgot new llist.h 2009-02-15 19:29:10 +01:00
b0e6468293 some testing and debugging 2009-02-08 04:10:37 +01:00
e435822de6 Ouch.. boost::ptr_vector depends on boost-serialisation. Write a simple replacement... 2009-02-08 01:31:01 +01:00
8e5097cbe0 cleanup, fixes, comments... 2009-02-06 22:51:39 +01:00
ee950d6255 some cleanup and re-ordering 2009-01-31 23:42:56 +01:00
19e85a95d4 fix: better make the shared_ptr a member of the Handle class
this change circumvents compiler uncertainities with the operator bool()
and actually seems to be better design too...
2009-01-31 23:28:09 +01:00
8419534f49 A generic opaque Handle type built on top of shared_ptr, for managing lifecycle 2009-01-28 02:44:59 +01:00
aa7fe2591c use a dedicated header to pull up early NoBug init 2009-01-26 01:09:49 +01:00
50625039d0 merge NoBug changes from master to bring this devel branch up-to-date
Next things to do will be reworking the draft/dummy to support multiple playback processes and a display callback
2009-01-25 02:10:03 +01:00
5eea58986f merge: ... bring in latest GUI additions from joel 2009-01-25 00:54:12 +01:00
10597beeba mass rename: relocate basic Logging conf. from liblumieracommon to liblumiera 2009-01-25 00:24:42 +01:00
Christian Thaeter
b9fc2d6522 WIP: deploy new logging flags in lib 2009-01-24 22:30:25 +01:00
Christian Thaeter
16ebdd65b1 some more logging flags, little cleanup, fix to Makefile.am 2009-01-24 22:30:25 +01:00
Christian Thaeter
ef6344057c first attempt to organize the nobug flags for review
I grepped out all flags which are actually defined/used in lumiera and
refactored them into one big tree here. There are some annotations and
issues which shall be finally resolved. Please check if the intended
hierarchy looks OK this way and add more flags when you think some are
missing. I chosen to make a quite verbose hierarchy, this doesnt cost much
in nobug and adds some flexibility. The Documentation at the head needs to
be reviewed. Many flags which are collected here need to be brought back
into the subsystems which use them, this is only to get a big picture for
now.
2009-01-24 22:30:25 +01:00
Joel Holdsworth
51f05ebb3e Merge branch 'guistart' of git://git.lumiera.org/lumiera/ichthyo into gui 2009-01-24 21:28:45 +00:00
Joel Holdsworth
0355c83f0e Added handling for when the user drags beyond the end of the tree 2009-01-24 17:50:18 +00:00
Joel Holdsworth
262ee3655b Added is_descendant_of method to tree 2009-01-24 17:19:10 +00:00
Joel Holdsworth
41f394a57b Excised ObservableList::to_list 2009-01-24 12:18:12 +00:00
49a865fa57 merge latest GUI additions (and fixes from master) for colaboration on the Player mockup
this branch still corresponds to joel/gui
2009-01-22 23:26:08 +01:00
3dae60f559 add missing stubs to make it pass the compiler 2009-01-22 17:29:17 +01:00
Joel Holdsworth
cb13f5f74c Merge branch 'master' of git.lumiera.org:/git/LUMIERA into gui 2009-01-21 18:21:08 +00:00
974e83676a Further ClassLock refactoring; added linkonce assertion check 2009-01-21 13:04:28 +01:00
801f070a7d Fix for broken logic of the ClassLock (showed up on Ubuntu Hardy)
this was nice copy-n-paster error, of course the implementation
namespace was never intended to be anonymous.
2009-01-21 12:19:02 +01:00
Joel Holdsworth
d42bc4ea90 Fixed a bug in tree 2009-01-20 23:17:40 +00:00
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
b479404288 fix logic for allocating a new memory manager 2008-10-23 19:47:08 +02:00
75cf4a97b3 ScopedHolder test passed 2008-10-23 18:33:56 +02:00
2b2654cb38 WIP test covering the ScopedHolder helpers 2008-10-23 07:15:48 +02:00
Joel Holdsworth
87ba2ab3db Merge branch 'master' of git://git.lumiera.org/LUMIERA into gui
Conflicts:

	icons/Makefile.am
	src/gui/Makefile.am
2008-10-23 00:15:46 +01:00
716700a432 draft solution finished, compiles but test fails of course...
solved the problem to push the actual memory manager completely into the cpp file
2008-10-22 04:55:28 +02:00
1e3a03b4c5 WIP dealing with object collections taking ownership 2008-10-21 09:04:59 +02:00
Christian Thaeter
23508f3f74 Nice, follow scons, name it liblumiera.a too 2008-10-21 06:19:52 +02:00
eaa89067bb WIP test covering the AllocationCluster draft 2008-10-20 06:27:14 +02:00
74164e890e finished the outline 2008-10-20 03:13:02 +02:00
Joel Holdsworth
3a41758682 Changed the "delete" variable name to "del" to satisfy the C++ compiler 2008-10-18 12:25:18 +01:00
1b6df94aab documentation (drawing) 2008-10-18 04:15:07 +02:00
747d793121 draft framework for handling the memory allocation of render nodes 2008-10-18 04:15:06 +02:00
d64d822690 merge from backend (plugin loader)
Merge commit 'lumi/master' into proc
2008-10-16 00:35:57 +02:00
Christian Thaeter
be9d2b189f fix lib/Makefile.am, a stale interfaces.h was left here 2008-10-15 18:01:52 +02:00
Christian Thaeter
29f5a0f2ab moved the remaining interface stuff from lib to backend 2008-10-15 16:05:17 +02:00
Christian Thaeter
ee7719eada tests and a first definition of a interface descriptor 2008-10-15 16:05:17 +02:00
Christian Thaeter
f05f6772f1 Interface system refactoring
* lumiera_interface are now static structures, never wrritten
 * introduced a lumiera_interfacenode which manages the dynamic data
   of interfaces. The interfaceregistry now holds this nodes.
2008-10-15 16:05:17 +02:00
Christian Thaeter
405a578c42 WIP: interface open/close handling cross dependencies 2008-10-15 16:05:17 +02:00
Christian Thaeter
4414af3751 add a 'weak' flag for interface_acquire/release()
When interfaces cross depend on each other nested acquiring from
their acquire handlers would introduce cyclic references which cant
be cleaned easily. By flagging such nested acquisitions as weak the
respective handler functions can account for this.

Example: maintain 2 ref counters one for strong and one for weak
acquisitions. At release time all acquired nested handles get closed when
the strong counter drops to zero, which causes that cross reference
releases will eventually drop the weak count to zero too. Then all
resources can be freed and the interface is properly shut down.
2008-10-15 16:04:32 +02:00
Christian Thaeter
c9ac956417 cosmetics 2008-10-15 16:04:32 +02:00
Christian Thaeter
bb9c53d32d change parameter order for _DNAME in interface.h, add a _REF macro 2008-10-15 16:04:32 +02:00
Christian Thaeter
66a1142079 apply the new defined nameing rules to interface.h 2008-10-15 16:01:09 +02:00
Christian Thaeter
b252807c55 functions for interface acquire/release 2008-10-15 16:01:09 +02:00
Christian Thaeter
caa5bd10a0 interface update
* remove the data member from the interface structure
 * add a psplay node used in a upcoming interface registry
 * add a INLINE function mapper
2008-10-15 16:01:08 +02:00