dea1fa57a2
draft play process structure; clarify handling of multiple channels
2011-09-25 19:25:58 +02:00
a19562942c
further considerations regarding output and output slots
2011-09-25 19:25:57 +02:00
4ece135257
cont.. drafting OutputSlot
2011-09-25 19:25:56 +02:00
ce6a917b59
first draft spec for the OutputSlot
2011-09-25 19:25:56 +02:00
a379476414
create outline of PlayService, add stubs for Play::Controller
2011-09-25 19:25:56 +02:00
1b0cb56dcc
implement PlayOut subsystem and draft OutputDirector
2011-09-25 19:25:55 +02:00
971dea6f6a
PlayService: basic definition and link to facade
2011-09-25 19:25:55 +02:00
2099ecbcac
finish and comment the new time::Control facility
2011-09-25 19:25:55 +02:00
f4d0d23e48
clean up leftovers from the first implementation attempts
2011-09-25 19:25:54 +02:00
fec2d25b52
additional quantisation and duration canges covered and passing test
2011-09-25 19:25:54 +02:00
15a3694cca
more complete unit test pass
2011-09-25 19:25:54 +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
9bd96a1b19
time-entities refactoring: Duration isn't an Offset
...
removed that inheritance relation; it was a typical
example of abusing inheritance and violated the
Liscov substitution principle. It is sufficient
to allow promotion of an offset into a Duration.
Note: Duration is the time metric
2011-09-25 19:25:53 +02:00
7c5f18643b
cont. reworking based on that idea; refactor mutation base cases
2011-09-25 19:25:53 +02:00
d39ae8afc6
idea for better organisation of the template specialisations
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
5e8a9b50d1
define asset::Viewer
2011-09-25 19:25:52 +02:00
b25d85e1dd
ProcNode hierarchy cleanup
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
4731afefb8
continue drafting the Player control elements -- life timevalue changes
2011-09-25 19:25:50 +02:00
c091b8e260
define Player / Output subsystem stub
2011-09-25 19:25:50 +02:00
20f95ca26f
draft the player facade interface
2011-09-25 19:25:50 +02:00
cb6453afe1
detailed planning how to build the player subsystem
...
key idea is to grow and rework the design of the
DummyPlayer to yield the full featured Player
2011-09-25 19:25:49 +02:00
899ffa60ca
WIP create (planned) new entities for the player subsystem
2011-09-25 19:25:49 +02:00
4a53ef4cd0
Clean-up: change some long standing TODOs into tickets
...
makes the test logs way more readable
Believe me: no one will ever notice a "TODO"
entry in the logs, when it showed up for
more than some months.
Thus I've created some new tickets, mostly
tagged as "QA" and placed the ticket number
at the corresponding locations in the source
2011-09-25 19:16:33 +02:00
Stefan Kangas
e34bb5ead1
Fix autotool build again, still fails on setup.ini
2011-09-15 04:35:08 +02:00
e103b4d8aa
SCons: fix error in linking executables
...
a long standing error, uncovered recently due to more stringent
checks of the linker on newer platforms, not picking up direct
dependencies of an executable transitively from the linked-to
dynamic libs (which is fine).
The error was to *overwrite* the LIBS construction variable
in the definition of the executable to link, instead of just
adding our dynamic links to the sources to be linked.
2011-07-25 00:36:53 +02:00
49d5a9592a
Fix drop-frame: remove float framerate
2011-05-21 07:09:22 +02:00
36cfaaa14d
REVERT tmpbuf implementation to the state of July.2010 ( bc989dab)
...
The new implementation provides differentiated buffers,
but is still buggy and causes double free alarms on shutdown
See Ticket #683
2011-05-21 06:52:39 +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
e5e6264493
technique to install a mock service temporarily
2011-05-19 23:21:50 +02:00
a207a9f003
adapt Media-Access (+Mock) to include an overall Duration
2011-05-18 01:37:33 +02:00
7656e5d500
adapt GUI to use the new Time framework
2011-05-16 08:38:01 +02:00
042598f04c
adapt Core + Proc to use the new Time framework
2011-05-16 08:37:36 +02:00
ef126283eb
add symbolic constant for "neutral" time.
...
Note: it's rather arbitrary choosen,
because any time grid can define its own origin.
You must not assume that the origin of any time axis
is located at Time::ZERO !!
2011-05-16 04:37:03 +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
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
3139fb7f1e
more 64/32bit fun
2011-05-15 04:19:27 +02:00
10215948a5
Fix another 64/32bit loss-of-precision problem
2011-05-15 04:19:26 +02:00
ccd40c3fee
better use a dedicated 'materialise' operation on the Quantiser
2011-05-15 04:19:26 +02:00
80f7dba334
WIP some comments and considerations
2011-05-15 04:19:26 +02:00
11137f7634
provide implementation of the nudge-Mutation
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
5851332628
back to business: now able to implement time mutation messages
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
9aa601d004
WIP first implementation version of PolymorphicValue holder template
2011-05-15 04:19:25 +02:00
eb733df1bb
proof-of-concept: implement simple mutation
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
9eb4f66372
draft more convenience handling for TimeSpan
2011-05-15 04:19:24 +02:00
eafbd4b1cb
fix a comment
2011-05-15 04:19:22 +02:00
Christian Thaeter
d4bb6cc906
fnv hash functions and tools
2011-04-29 04:04:01 +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
dca5b81710
Fix: problems whith bare $ORIGIN without relative dir
...
actually the iterator was written quite contrieved;
now doing the token replacement as a separate first
step -- makes matters way simpler
2011-02-15 00:16:50 +01:00
aef929b3d9
better install the setup.ini direcly into $ORIGIN
...
seems to be the most obvious location to install it
2011-02-14 23:54:31 +01:00
cef1ff3dcc
Fix: extract empty path relative to $ORIGIN
2011-02-14 23:54:30 +01:00
65d28b4018
Gui: rework resource loading to make the application fully relocatable
2011-02-07 09:56:27 +01:00
87c70d0b1f
Gui: some typedefs for Glib::ustring
...
...helps to write way shorter signatures
2011-02-07 09:56:08 +01:00
421a81b25b
Gui: WindowManager and GtkLumiera refactoring
...
- split off the tricky basic GTKmm includes
- reduce the clutter in the gtk-lumiera.header
- make GtkLumiera a singleton, placed into static memory
- remove all static functions from WindowManager
2011-02-07 09:55:57 +01:00
29e67e828d
remove NoBug resourcetracker and switch back to plain pthreads
...
due to desing shortcomings, the resourcetracker
produces lots of false positives and inhibits
any further diagnostics regarding GUI startup.
2011-02-07 09:55:39 +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
87475fa3c1
Fix usage of field named "new" in configitem.h
...
This prevents including config.h into C++ code
2011-02-06 02:39:34 +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
51ef755a4f
Merge Timehandling draft and GUI DrawStrategy and TimelineEntiy refactorings
...
Merge branch 'gui' into install
2011-02-05 14:30:11 +01:00
babbe33d1d
Demonstration of complete bootstrap, loading INI and resolving GUI module path
2011-02-04 16:10:59 +01:00
a42e6a5a8f
draft solution loading an INI file for module path resolution
...
this would remove the need to compile any path into the EXE
2011-02-03 17:34:24 +01:00
208b552955
Demonstration how the application could resolve the module loading location
...
The real application likely will consult the configuration file
to search alternative module installation locations.
2011-02-01 05:10:45 +01:00
29e2233e6a
an exercise: how to get the path of the current executable
...
Note: this is a non-portable Linux solution
2011-01-31 05:35:43 +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
69eb659d4e
refactor to extract a special "flip representation" operation
2011-01-22 18:33:15 +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
0493caac1d
first complete implementation of SMPTE timecode
...
first integration of the various components
developed thus far; design still needs some
improvements, esp. regarding the effectiveFramerate
Note NTSC-drop-frame not yet supported...
2011-01-21 11:42:29 +01:00
f930703e86
WIP draft cascading breakdown of time into timecode components
...
TODO not entirely correct... and how to access the framerate?
2011-01-20 22:17:25 +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
c3d0fda495
remove superfluous type qualifier
2011-01-19 11:32:38 +01:00
5418902442
remove superfluous default parameters from Tuple constructor function
2011-01-19 11:32:27 +01:00
9df0df6145
Merge Stefan's work on timeconversion and SMPTE drop-frame
2011-01-19 11:32:03 +01:00
Stefan Kangas
551ec8f011
Remove preconditions requiring correct formatting of input times in time lib.
...
For example, one could not specify minutes > 59 nor milliseconds > 999. Other
parts of the code however relied on the fact that one could give arbitrary times
in all fields (hours, milliseconds and minutes).
2011-01-19 11:10:39 +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
71a80d3df6
integrate check for supported formats into Quantiser
2011-01-16 22:19:48 +01:00
92c4516cae
implement this format-support descriptor
2011-01-16 19:50:42 +01:00
2c90335b1d
WIP idea how to represent support for some timecode formats
...
concrete quantiser instances need a way to state
support for just some timecode formats -- yet I dont
want to push vectors aroud all over the place
2011-01-16 15:41:34 +01:00
aa5c78a30f
TimeGridBasics_test pass
2011-01-15 15:04:23 +01:00
240c5ac232
extract asset iostream display into separate header
2011-01-15 14:43:50 +01:00
a70376dc4b
grid asset passes first basic unit test!
2011-01-15 14:07:25 +01:00
8bc5bf88c9
fill in the missing parts to create a grid asset
2011-01-15 13:10:02 +01:00
ee0dcf3ba0
introduce generic grid API to subsume quantiser and grid asset
2011-01-15 03:49:35 +01:00
bdc1800470
add support for offset linear combinations
2011-01-15 01:45:55 +01:00
eb89547265
get rid of the QuantiserRef
...
this is going to become soooo complicated
better just bite the bullet and use a shared_ptr
2011-01-15 00:52:02 +01:00
Stefan Kangas
2fba7aba2c
Move draw functionality to timeline::Entity base class
2011-01-14 18:46:41 +01:00
Stefan Kangas
1c284fb497
remove three unnecessary #includes
2011-01-14 18:36:26 +01:00
Stefan Kangas
a127ec7873
fix three #include paths for cairomm
2011-01-14 16:57:34 +01:00
Stefan Kangas
e947d6f053
Add DrawStrategy object for timeline entities
2011-01-14 16:57:34 +01:00
Stefan Kangas
944406f4a3
Remove redundant '*' in many doxygen style comments
2011-01-14 16:57:34 +01:00
Stefan Kangas
62a05d003c
add new baseclass Entity for things placed on timeline
2011-01-14 16:57:34 +01:00
Stefan Kangas
7f615d734f
WIP: make clips selectable in timeline
2011-01-14 16:57:34 +01:00
Stefan Kangas
5c4992310e
several style fixes, underscore to camel case
2011-01-14 16:57:34 +01:00
Stefan Kangas
7500732976
Move Clips for ClipTracks to the GUI model.
2011-01-14 16:57:33 +01:00
Stefan Kangas
3f4c7a5e46
Spelling and style fixes
2011-01-14 16:57:33 +01:00
Stefan Kangas
aed9193cfa
Move clip name and duration to GUI model.
2011-01-14 16:57:33 +01:00
Stefan Kangas
c01d6dbd0b
Move Track enabled/locked state to GUI model.
2011-01-14 16:57:33 +01:00
457d4fb7c4
define or stub to get it to compile; add function time-from gridnr
2011-01-14 05:33:50 +01:00
a1f2a60427
WIP design draft regarding the interplay of quantisation and timecode
2011-01-13 23:56:52 +01:00
debe032f49
basic quantisation now working and covered by unit test
2011-01-13 03:36:12 +01:00
e2cab1f512
some more smoothing of rough edges
2011-01-13 03:36:12 +01:00
c7a887a528
Quantiser basic unit test pass, including corner case
...
ufff... finally
2011-01-13 03:36:12 +01:00
edc2598f27
cover additional time handling convenience shortcuts
2011-01-13 03:36:12 +01:00
af9c799fc8
Fix time quantisation to circumvent the precision problem
...
required to re-arrange several functions in order
to use the new util::floordiv and to get all relevant
calculations into time.h
2011-01-13 03:36:12 +01:00
237d287021
change time.h into a multilingual header
2011-01-13 03:36:12 +01:00
71aacc7698
implement an Integer-floor function for time quantisation
...
Contrary to the built-in division operator, this
function always truncates towards the next smaller
integer (also for negative numbers)
2011-01-13 03:36:11 +01:00
52eb4c4709
set an explicit artificial limit on the allowed time range
...
this is the first building block in an attempt to
protrect against time wraparound. The intention is
not to be airtight, but practically effective.
A really airtight solution would require writing
our own SafeInt class
2011-01-13 03:36:11 +01:00
3cf9974211
provide unary minus to flip a TimeVar around origin
2011-01-13 03:36:11 +01:00
d30515c37e
analysis of range limit problems in quantisation
2011-01-13 03:36:11 +01:00
48b3f39c49
improve and cover Time convenience handling shortcuts
2011-01-13 03:36:11 +01:00
b66b778c42
implement and test simple demo quantiser
2011-01-13 03:36:11 +01:00
dede87d384
implement basic quantisation operation for timehandling library
2011-01-13 03:36:11 +01:00
84c73c645d
draft unit-test to cover basic quantiser behaviour
2011-01-13 03:36:10 +01:00
c85f7e0715
Add more special formatters and Digxel testcases
...
The Digxel implementation draft can be considered complete now
2011-01-13 03:36:10 +01:00
8e90b3d5dc
Digxel unit test pass
2011-01-13 03:36:10 +01:00
159d3928d8
Timecode stub implementation...
...
now passes Compiler and Linker again
2011-01-13 03:36:10 +01:00
031f61f31d
WIP prototypical Digxel implementation complete
2011-01-13 03:36:10 +01:00
e66bed65e4
WIP stubs for timecode string representation
2011-01-13 03:36:10 +01:00
2edaae5c5b
simplify util::isnil implementation
...
doh!
2011-01-13 03:36:10 +01:00
25d7af449e
WIP adapt / rewrite Digxel implementation
2011-01-13 03:36:10 +01:00
e7f5ce9e33
WIP rework timecode format hierarchy
...
second try: eliminate base class,
work with concrete formats allways...
2011-01-13 03:36:09 +01:00
336264a6be
WIP first implementation draft for Digxel -- problematic
...
This draft highlights problems with poliferation of
generated virtual methods (code bloat). Also it's
unnecessarily complex and especially the automatic
conversion to double *and* int creates a whole
shitload of problems....
2011-01-13 03:36:09 +01:00
b19fd1e634
WIP rework and adjust "Digxel" draft
2011-01-13 03:36:09 +01:00
6638120ec2
WIP test-driven dreaming... inventing a "Digxel" entity
2011-01-13 03:36:09 +01:00
607c8a2338
WIP enough stubbing to get it through the Compiler...
...
...but NOT yet the linker
2011-01-13 03:36:09 +01:00
62f9e84f2d
reduce the prerequisites of trait.hpp
...
the AssignableRefWrapper is not in use anymore...
by not pulling in wrapper.hpp, we avoid <functional>
2011-01-13 03:36:09 +01:00
c40ba74bc6
WIP clarify ambiguity with fractional seconds
...
They are *not* intended to stand-in for gavl_time_t
Indeed, Time values should be handled as opaque
2011-01-13 03:36:09 +01:00
15214cc069
WIP start stubbing and defining time quantisation and timecode entities
2011-01-13 03:36:08 +01:00
f798428428
WIP start a unit test to cover simple time grids
2011-01-13 03:36:08 +01:00
04db5655f1
Implementation: building a simple time grid
2011-01-13 03:36:08 +01:00
640d061de6
Meta Assets as a framework for specifiyng a TimeGrid
2011-01-13 03:36:08 +01:00
3d4227d374
cover offsets, durations and timespans by unit test
2011-01-13 03:36:07 +01:00
f7588c36c4
basic time value entites defined roughly complete
2011-01-13 03:36:07 +01:00
ebd93b0f12
fix inclue path error pointed out by "esevece"
2011-01-13 03:35:22 +01:00
643859f6b8
add a mutable time value with full arithmetics
2010-12-28 02:27:42 +01:00
0c45fc47f3
defining the first elementary operations for time values
2010-12-28 02:27:41 +01:00
9d91869098
move Variant to lib namespace, a bit of cleanup and clarifying the code
2010-12-28 02:27:41 +01:00
09d400d5bc
put asside the existing "lumitime" to build a new hierarchy from scratch
...
existing code will still use lumitime.hpp for now
while we're about to reorganise time handling altogether
2010-12-28 02:27:41 +01:00
Stefan Kangas
7a5ed1220d
Replace relative #include paths with absolute paths.
2010-12-27 05:50:40 +01:00
784b094fa7
fix compilation problems with draft code
2010-12-26 23:00:34 +01:00
c1be39eacb
Merge recent time quantisation analysis
...
Merge branch 'timequant' into proc
2010-12-26 22:30:28 +01:00
Stefan Kangas
bdb9832f29
Rename "Resources" to "Assets"
2010-12-26 22:30:07 +01:00
Stefan Kangas
86c7003d6d
Commit CairoUtil class forgotten in commit 60ccdd.
2010-12-26 22:19:09 +01:00
Stefan Kangas
fffb1b89da
Fix compilation problems on the buildserver, cont. (Ticket #735 )
2010-12-26 09:55:34 +01:00
Stefan Kangas
60ccdda018
Replace several uses of GdkColor with Cairo::SolidPattern.
2010-12-25 21:29:53 +01:00
Stefan Kangas
063e5887b4
Fix Ardour Timecode widget: compilation problems on the buildserver. (Ticket #735 )
2010-12-25 04:39:30 +01:00
Stefan Kangas
87ad80f17e
Fix typos.
2010-12-24 23:19:04 +01:00
Stefan Kangas
e0da4c2378
Make Timeline default to Arrow Tool instead of Ibeamer Tool.
2010-12-24 23:10:00 +01:00
Stefan Kangas
0594ea26ad
Make Timeline Arrow Tool use the standard left cursor.
2010-12-24 22:46:22 +01:00
Stefan Kangas
1166339387
Use Time instead of gavl_time_t in the timecode widget.
2010-12-24 19:39:12 +01:00
Stefan Kangas
799a8188de
First implementation of track visible in timeline.
2010-12-24 19:34:25 +01:00
Stefan Kangas
74fce587bd
Fix several incorrect comments (refering to the wrong file).
2010-12-24 19:34:25 +01:00
f18226e8ac
WIP start drafting simple time values, offsets and intervals
...
questions: what is mutable / immutable?
what is the distinction between TimeValue and Time ?
what conversions make sense?
what mutations / operators to support?
2010-12-22 04:49:57 +01:00
000486e126
WIP create empty unit tests for time quantisation/handling
2010-12-22 04:09:27 +01:00
Stefan Kangas
a6fd1ec6fd
Give names to the default ClipTracks in the GUI test code.
2010-12-21 09:52:27 +01:00
cce72e611e
WIP: new namespace and compliation units for time quantisation
...
namespace lib::time
lumitime.cpp will define the basic time wrapper
quantiser.cpp the grid alitnment and formatting wrapper
header for
- timevalues / ranges
- quantised time valuse
- timecode valuse
"lumitime.hpp" will contain the interface facilities
2010-12-21 02:05:13 +01:00
e1708f33b9
Merge testsuite and builder changes from Lumiera master
2010-12-18 02:30:02 +01:00
459b1a061f
Autotools fixes
2010-12-18 02:22:25 +01:00
2c992a1a4d
Fix a printf warning in GUI
2010-12-18 01:01:27 +01:00
7fc462209e
some naming cleanup and namespace indentation fixes
2010-12-18 00:58:19 +01:00
3f1b7651e9
GPL header whitespace
2010-12-17 23:28:49 +01:00
4410830f72
Merge Fixture datastructure and Testsuite work
2010-12-17 22:51:27 +01:00
Stefan Kangas
46d4b4ac66
First version of timecode widget adapted from Ardour.
2010-12-17 19:28:10 +01:00
e7191ed3c6
Planning Fixure: Segmentation datastructure ( #726 )
2010-12-13 03:22:11 +01:00
c4282560ce
fix two regressions
2010-12-12 01:53:23 +01:00
8a54e00b6b
ModelPort registry unit test pass ( closes #727 )
2010-12-11 23:40:12 +01:00
be6f555e04
Builder: registry for model ports coded up
...
passes compiler, but not yet unit test....
Needed to change asset::ID to encapsulate the embedded hash value
2010-12-11 01:52:02 +01:00
0464ca965c
fill in ModelPort and ModelPortRegistry definition stubs
...
making test pass the compiler
2010-12-10 18:12:56 +01:00
7043db90ee
introduce an explicit StreamType::ID
2010-12-10 17:39:39 +01:00
9c86deb18c
augment asset ID: automatic conversion, typed NIL ID constants
2010-12-10 15:29:43 +01:00
2827961385
WIP: test driven brainstorming about model port registry
2010-12-10 01:27:17 +01:00
8802beb753
rereading (and rewrapping) the builder/engine code...
...
started this a long time ago, then got sidelined....
2010-12-09 22:43:32 +01:00
Stefan Kangas
41e6750163
Move time conversion logic from lumitime.cpp to time.c
2010-12-06 16:18:54 +01:00
Stefan Kangas
cc95c0df97
Fix two minor typos
2010-12-06 13:46:50 +01:00
Stefan Kangas
2909804538
Add preliminary implementation of a menu option Window/Close Window
2010-12-06 13:40:32 +01:00
Stefan Kangas
df15c3d654
Change format of placeholder in About/Credits to stop it from being a clickable link
2010-12-06 03:41:07 +01:00
Stefan Kangas
9a881c95df
Enable lock/unlock and disable/enable individual tracks in the GUI
2010-12-06 03:40:15 +01:00
ee56ab36a0
Definition of ModelPort, model port reference and -table ( #718 )
2010-12-05 02:46:37 +01:00
145ad6c3a5
more (trivial) cleanup and renaming
2010-12-05 02:46:37 +01:00
828206e6b1
OutputMapping unit test pass ( closes #651 and #716 )
2010-11-28 05:18:57 +01:00
c7794e7cbf
rewrite to retrieve default-pipe query from the defintion context
2010-11-28 02:16:39 +01:00
5ba7468f41
OutputMapping implementation complete, pending unit test
2010-11-28 01:43:55 +01:00
fc051dfcba
OutputMapping implementation draft
...
coded up the easy part, omitting the actual resolution
based on an configuration query
2010-11-27 06:01:31 +01:00
1e2d4d90f6
start using a typedef HashVal instead of size_t ( #722 )
2010-11-27 05:11:02 +01:00
f9bc292ac3
better use boost::operators for full equality comparison support
2010-11-27 04:21:39 +01:00
c3d29d1eb3
OutputMapping: interface refactorings to yield a cleaner structure
2010-11-27 03:59:07 +01:00
56c1387cd5
OutputMapping: finish interface draft (stubbed)
2010-11-25 05:35:50 +01:00
645ddd284c
WIP Solution draft for defining an output mapping type
2010-11-25 04:52:49 +01:00
a7ec680955
WIP chewing on the problem how to define a output mapping type
2010-11-24 06:21:32 +01:00
0866d2c191
convenience lookup function for pipes
2010-11-24 06:20:53 +01:00
b42e5c859f
Test-driven brainstorming: how should output mapping be used?
2010-11-23 03:40:11 +01:00
5ae1f819f2
Finished the design of global pipes
2010-11-21 02:29:26 +01:00
272f3d75ff
finish OutputDesignation definition and outline. ( closes #312 )
2010-11-19 19:10:24 +01:00
9473fd3d67
OutputDesignation implementation draft
2010-11-19 05:01:43 +01:00
71f1dfede8
WIP output mapping draft ( #716 )
2010-11-17 04:49:21 +01:00
250bfeaee5
use the new OptionalRef to protect session shutdown
...
The original version was sensible to static initialisation order,
which shold be resolved now, because of OptionalLink's dtor
explicitly disabling any further access.
2010-11-06 22:56:17 +01:00
bd361523d1
better use functor-style access instead of implicit conversion
2010-11-06 22:49:32 +01:00
f597e7c8b4
optional object link implemented and working
2010-11-06 22:32:08 +01:00
07f7837a7b
draft behaviour of a optional/switchable object link
2010-11-06 21:23:35 +01:00
1b95a02f14
Autotools fixes
2010-11-06 18:17:25 +01:00
40627b1c12
fix a regression, caused by removing the special Struct-ID handling
2010-11-05 04:32:35 +01:00