Commit graph

1331 commits

Author SHA1 Message Date
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
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
59dfb7c660 start drafting a (dummy) output slot implementation
this implicates a first attempt to build a
dummy buffer provider implementation.
Mostly just defining stubs here....
2011-11-07 01:57:33 +01:00
7ab7c8073d remold OutputSlot implementation structure
Better solution where to place the extension points
to be implemented by concrete output systems
2011-11-06 02:37:22 +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
0cd7bd2b4c add test coverage for the test frame table 2011-11-01 03:36:35 +01:00
db3ea6638d use boost::random to ensure distinct test frame contents 2011-11-01 03:11:43 +01:00
20777cca8a implemented testframe, not passing all tests yet 2011-10-31 02:20:32 +01:00
a14e4f7ccd define a facility to generate test frames 2011-10-31 00:13:35 +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
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
c4ff87c3a8 decide about the basic way to implement concrete buffer metadata 2011-10-24 01:03:56 +02:00
f7a3fdb7a5 fix further test glitches (due to using real random numbers now) 2011-10-23 22:06:32 +02:00
b39edad306 clean-up some additional mentions of boost::ref 2011-10-22 21:45:59 +02:00
2730fa8d7a a bit of stylistic cleanup
- using std::tr1::shared_ptr in namespace gui
- thus removing a lot of std::tr1 qualifications
- fix some includes. Should be relative to 'src'
- interface classes should declare a virtual dtor!
2011-10-22 02:49:30 +02:00
d48dc3b025 fix glitch in test definition
uncovered since rand() is now properly seeded
prior to each testsuite run
2011-10-21 02:41:20 +02:00
65b309e5cb Testsuite: automatically seed the random number generator 2011-10-21 01:09:12 +02:00
f1a4489470 Fix minor problems after merge 2011-10-21 00:58:15 +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
3ae35b2df9 define more extensive testing of derived metadata keys 2011-10-15 17:47:50 +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
1627698911 implement hash function for functor obejects. Unit-test pass 2011-10-14 14:49:55 +02:00
6baadbaef0 draft a workaround for hashing functor objects 2011-10-14 03:54:22 +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
f505c46d1d finish simple allocator frontend. Unit-test pass 2011-09-25 19:26:12 +02:00
5350ef6dbe split off and test-cover simple typelist utils
these simple utils (length of typelist, maximum size
containment test) are mostly not used in conjunction
with the more elaborate typelist manipulatino utils.
Moreover, we lacked a dedicated unit test
2011-09-25 19:26:11 +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
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
c473784fe3 disable obsolte parts of BufferTable_test
to be rewritten
2011-09-25 19:26:06 +02:00
ed5091d8f5 considering Buffer handling and BuffTable in more detail 2011-09-25 19:26:06 +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
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
2625eee07c disable work-in-progress to make the tree compile
TODO noted as Ticket #819
2011-09-25 19:26:02 +02:00
691ab4b8b5 WIP draft simple OutputSlot usage 2011-09-25 19:26:01 +02:00
7adb8149db back to test-driven brainstorming again 2011-09-25 19:26:00 +02:00
08df994fb1 fix unit test broken by 7dad280 (14.6.2011) 2011-09-25 19:25:59 +02:00
f46cc26851 factor out convenience shortcut
transform iterator and wrap result into IterSource
2011-09-25 19:25:59 +02:00
2099ecbcac finish and comment the new time::Control facility 2011-09-25 19:25:55 +02:00
fec2d25b52 additional quantisation and duration canges covered and passing test 2011-09-25 19:25:54 +02:00
a1427bb0b9 next challenge: expected behaviour for quantised source/target values 2011-09-25 19:25:54 +02:00
15a3694cca more complete unit test pass 2011-09-25 19:25:54 +02:00
92dbedc289 intensify the unit-test... 2011-09-25 19:25:53 +02:00
b54cd2c722 cont. defining time::Control special cases
the refactoring seems to work out OK, was able
to cover all the cases defined thus far....
2011-09-25 19:25:53 +02:00
a8fd0bf7c5 better avoid throwing and use a default time grid in some cases 2011-09-25 19:25:53 +02:00
47afbbeab0 first attempt towards covering the various special cases
the intention is to generate most combinations from
generic template cases, but to define the difficult
cases by explicit specialisation
2011-09-25 19:25:53 +02:00
eed2b0f320 time::Control simple unit test pass 2011-09-25 19:25:52 +02:00
c96cd66688 draft implementation for time change and propagation 2011-09-25 19:25:52 +02:00
27533c3bb9 WIP darft usage for the new time::Control (life change) element 2011-09-25 19:25:52 +02:00
e497f0a41e test case generator (Cartesian product): unit test pass 2011-09-25 19:25:52 +02:00
ae36b2d941 stubs and adjustments to get it through the compiler 2011-09-25 19:25:52 +02:00
786ecbe829 WIP draft test helper for generating test cases (Cartesian product) 2011-09-25 19:25:51 +02:00
eb5e0ab9ff WIP: start building a Test for time::Control. Need Cartesian product of cases... 2011-09-25 19:25:51 +02:00
9004818d63 further planning the features of time::Change 2011-09-25 19:25:51 +02:00
14bc7d1fd4 fix regression in test definition
random time values are really random. Doh!
2011-09-25 19:16:13 +02:00
Stefan Kangas
e34bb5ead1 Fix autotool build again, still fails on setup.ini 2011-09-15 04:35:08 +02:00
49d5a9592a Fix drop-frame: remove float framerate 2011-05-21 07:09:22 +02:00
b6f81d1e1e Fix problems discovered by compiling with gcc 4.4 2011-05-21 07:08:17 +02:00
ad59049ed0 disable broken Thread-joining test. See Ticket #803 2011-05-21 06:52:50 +02:00
2dde33ec42 remove unecessary double calls to lumiera_config_destroy()
config system is initialised and closed automatically
2011-05-21 06:52:25 +02:00
1aafb07a43 fix remaining issues turned up by switching the time handling 2011-05-20 03:39:07 +02:00
51fa9fe735 MediaFactory now using MediaAccessFacade to determine media Duration 2011-05-20 02:59:29 +02:00
12f43078a2 fix some names 2011-05-20 02:17:20 +02:00
4b4fcb0c80 use (and verify) this with the MediaAccessMock_test 2011-05-20 02:02:14 +02:00
a207a9f003 adapt Media-Access (+Mock) to include an overall Duration 2011-05-18 01:37:33 +02:00
46c9811184 adapt the unit-tests to use the new Time framework 2011-05-16 08:38:27 +02:00
481875a78a add check for time point contained in TimeSpan 2011-05-16 04:02:26 +02:00
b9861ef88f WIP completely remove the old Time wrapper 2011-05-15 22:51:02 +02:00
ee5c9910e1 dry-run: switch the lumitime-test.cpp to use the new Time framework 2011-05-15 22:10:26 +02:00
99bf3c6d81 join with latest work on timecodes and frame quantisation
Merge branch 'timequant' into gui
2011-05-15 04:28:20 +02:00
3e28c870f5 Finish basic Time mutations, unit test pass 2011-05-15 04:19:27 +02:00
4bf53bba0f code unit test to demonstrate full time/timecode usage cycle 2011-05-15 04:19:27 +02:00
f85c86d6c8 parsing fractional seconds: unit test pass 2011-05-15 04:19:27 +02:00
c7bb7154a7 draft a test to cover parsing of timecode values 2011-05-15 04:19:27 +02:00
6b1b6cb805 draft how to integrate parsing of timecode formats 2011-05-15 04:19:27 +02:00
80f7dba334 WIP some comments and considerations 2011-05-15 04:19:26 +02:00
af1561068e definitions and stubs to make it compile 2011-05-15 04:19:26 +02:00
bf61ff7248 WIP test-driven brainstorming: nudge by grid 2011-05-15 04:19:26 +02:00
2035405251 add time Mutation to adjust by offset 2011-05-15 04:19:26 +02:00
baf601c16b first time mutation test cases pass 2011-05-15 04:19:25 +02:00
6fa11ffcf6 special case: support cloning, but not copy
needed to add yet another policy template,
so PolymorphicValue doesn't invoke the
assignment operator in such cases
2011-05-15 04:19:25 +02:00
6daf14211b Finish the PolymorphicValue support template 2011-05-15 04:19:25 +02:00
710ae8fa0f Allow for improved performance in special cases
Using a policy based switch in case the client
interface collaborates and provides copy operations;
in this case, a direct static downcast instead of
the expensive indirect (dynamic) cast to the
management interface can be employed.
2011-05-15 04:19:25 +02:00
a10e381cfa fix error in test logic
need to adjust the checksum on copy :)
2011-05-15 04:19:25 +02:00
9aa601d004 WIP first implementation version of PolymorphicValue holder template 2011-05-15 04:19:25 +02:00
0aaa010350 WIP draft how polymorphic value objects are expected to behave 2011-05-15 04:19:24 +02:00
4d6bb3d54c design outline for a limited time::Mutation capability 2011-05-15 04:19:24 +02:00
9364d717b0 implement total order on time intervals 2011-05-15 04:19:24 +02:00
0e4ed856d7 WIP: get back into the topic of time value mutations
start drafting a unit test....
2011-05-15 04:19:24 +02:00
9eb4f66372 draft more convenience handling for TimeSpan 2011-05-15 04:19:24 +02:00
ab72b528c8 draft test for changing time specs 2011-05-15 04:19:22 +02:00
Christian Thaeter
e6cc7d3f99 WIP: autotools catchup, make it build again
Lumiera builds again, but some tests are missing and the new setup.ini
isn't loaded correctly which makes the plugin loader fail.
2011-04-28 13:14:29 +02:00
1e1c3706dc update some DIR_INFO entries 2011-04-05 00:44:30 +02:00
b843546922 cumulated build/release fixes
up to corresponding debian/0.pre.01-3
- compile issue (digxel.hpp)
- SCons missing config dependency on test-only
- 32/64bit fixes
2011-03-31 18:43:50 +02:00
bc1c89639d fix the plugin loading test to suit the new dir layout
the 'missing path' test still works, but rather
accidentally: the plugin search path retrieved from
resolving $ORIGIN is an absolute path, while this
test uses relative paths; thus the querried plugin
won't be found. In the second test, we set an
environment override, using the relative path
(which is now 'modules'). Thus the discovery works.
2011-02-13 23:45:11 +01:00
35380e7873 correct expected values for timehandling tests
regarding frames: we don't round, we truncate
towards the next lower integer
2011-02-13 23:12:36 +01:00
3c27147459 small fixes, comments 2011-02-13 23:11:16 +01:00
65d28b4018 Gui: rework resource loading to make the application fully relocatable 2011-02-07 09:56:27 +01:00
88678209bc use setup.ini to retrieve the modulepath and configpath
connect config-facade with the new BasicSetup implementation
to fetch values from setup.ini, instead of the (not implemented)
Config-system. Hook this new lookup mechanism into the
plugin loader to retrieve the search path from there
2011-02-06 05:06:16 +01:00
11d709b85e incorporate basic setup.ini into the AppState object 2011-02-06 02:12:00 +01:00
e84ceec9b5 refactor some lib facilities
- Cmdline into namespace lib
- test coverage for the SearchPath iterator
2011-02-05 23:53:37 +01:00
e73bea379c Adjust some Copyright headers
List of years instead of a range is better
2011-02-05 20:56:51 +01:00
ad246ad31d Merge Buildsystem adaptations for installing Lumiera
- use custom builders
- clean up specification of target paths
- generated executable is fully relocatable
- read a bootstrap INI instead of compiled in searchpath
2011-02-05 15:54:24 +01:00
d9f90c2c04 SCons: finish reworking buildsystem to rely on custom builders.
All target paths and install targets now defined automatically,
most of the buildscript just using plain sourcefile names
2011-01-30 22:12:55 +01:00
9cb03c7015 Fix installation triggered already by build target 2011-01-30 19:43:51 +01:00
abf1bc776b SCons: remove all explicit target and install specifications
now superfluous, because our custom builder handles that automatically
2011-01-30 18:56:51 +01:00
609873d90b switch to use the new (better) builder implementation
especially this means to use the common well-known names again,
like "Program" "SharedLibrary". The customisation now happens
invisible in LumieraEnvironment.
2011-01-30 17:00:15 +01:00
014c22b40a SCons: rework build directory configuration. All customisations to LuimieraEnvironment 2011-01-30 15:27:21 +01:00
35953b335b SCons: rearrange output directory to target/modules 2011-01-29 02:06:21 +01:00
764a38abe6 SCons: experimental support for some library lookup concerns
- setting -rpath with $ORIGIN  to build a relocatable package
 - fix missing DT_SONAME (likely just a problem of very old SCons version)
2011-01-28 23:31:00 +01:00
faf579c4c5 enforce generally imutable time values 2011-01-22 23:20:12 +01:00
dea026cfd9 omit the Digxel timing measurments from test suite 2011-01-22 18:44:03 +01:00
7b783e885a more thorhoug testing of denormalised values
...uncovered yet more bugs.. yay!
2011-01-22 18:35:04 +01:00
acc7a19fbd Fix: now able to handle negative extended SMPTE
changed the order of propagation when wrapping
the individual digxels of the SMPTE Timecode
2011-01-22 14:41:58 +01:00
ac9e9a99df change the way the Digxel mutator is invoked
this refactoring prepares a change to address
the problems with negative extended SMPTE Timecode
2011-01-22 14:04:43 +01:00
14f233f83b WIP: some more test coverage ... unveiling yet more bugs 2011-01-22 02:35:58 +01:00
9d75739089 SMPTE Timecode (without drop frame) unit test pass 2011-01-21 20:24:41 +01:00
1a07cc9bb2 SMPTE Timecode: first round of debugging and testing 2011-01-21 16:22:01 +01:00
1b79b4a937 fix regression 2011-01-20 21:39:17 +01:00
c55260d4e4 generalise to long and int; improve test coverage 2011-01-20 21:30:48 +01:00
05383ea44a crafting a integer scale wrapping util, for timecode conversions 2011-01-20 13:21:14 +01:00
e1c025778b Digxel: ensure the mutator functor is also called on increment 2011-01-19 11:47:14 +01:00
9df0df6145 Merge Stefan's work on timeconversion and SMPTE drop-frame 2011-01-19 11:32:03 +01:00
Stefan Kangas
6a44134833 Add support for NTSC drop-frame timecode. 2011-01-19 11:10:39 +01:00
Stefan Kangas
94f8379aa2 Improved frame counting capabilities for time lib. Unit tests. 2011-01-19 11:10:39 +01:00
Stefan Kangas
d2702e8254 Add frame counting capabilities to time conversion lib. 2011-01-19 11:10:39 +01:00
95a1687a5b draft how a SMPTE-Timecode element could be implemented
passes Compiler, but thats about all...
2011-01-18 05:01:25 +01:00
ce420a1570 special digxel to represent the sign 2011-01-18 04:59:40 +01:00
38844b9050 get simple quantisation/timecode integration to run
passing the basic tests now;
still missing: implementation of specific timecodes,
e.g. SMPTE, HMS,....
2011-01-17 07:25:22 +01:00
02653621f6 adapt the TimeGrid meta asset, so it can be published as Quantiser 2011-01-17 06:38:10 +01:00
484c771d2a establish hidden advice link to the session 2011-01-16 23:58:42 +01:00
92c4516cae implement this format-support descriptor 2011-01-16 19:50:42 +01:00