Hi !
As I didn't got any answer I allow myself to resend this email I sent
some time ago.
Sorry for the inconvenience,
Kjö
===========
>> Isn't this more or less the same idea as the 'live pattern mode' (or
>> 'stacked pattern mode'), where the pattern change is postponed until the
>> next bar?
>>
>> - Jakob
>>
> Yes, it's that, but I didn't kenw anything about this mode in Hydrogen.
> That seems really nice - I will take a closer look to this mode.
>
>
I had a closer look, and yes that's nearly exactly what I was looking for.
There is still a question : there are two variables in H2Core which
seems to be designed to control the 'live pattern mode', but which are
not really implemented :
libs/hydrogen/src/hydrogen.cpp:
-------------------------------
bool m_bAppendNextPattern; ///< Add the next pattern to the list
instead
/// of replace.
bool m_bDeleteNextPattern; ///< Delete the next pattern from the
list.
I guess that these variables should control wether the next patterns
should be added to the playing pattern or replace them. But I don't
really understand the difference between this variables.
If m_bAppendNextPattern is true, then I understand that the patterns in
m_pNextPatterns should be added to m_pPlayingPatterns, so the patterns
in m_pPlayingPatterns should not be deleted and I understand that
m_bDeleteNextPattern should be false ;
So if m_bAppendNextPattern is false, I understand the opposite : the
patterns in m_pNextPatterns should replace those in m_pPlayingPatterns,
so the patterns in m_pPlayingPatterns should be deleted and I understand
that m_bDeleteNextPattern should be true.
So in the way I understand things, we always have
m_bDeleteNextPattern = !m_bAppendNextPattern
which makes stupid to declare two variables. Where am I wrong ?
Thanks by advance for your answer,
Kjö
P.S. In my understanding, it is possible to implement m_bAppendPattern
this way :
Index: libs/hydrogen/src/hydrogen.cpp
===================================================================
--- libs/hydrogen/src/hydrogen.cpp (révision 658)
+++ libs/hydrogen/src/hydrogen.cpp (copie de travail)
@@ -1188,6 +1188,12 @@
if ( ( tick == m_nPatternStartTick + nPatternSize )
|| ( m_nPatternStartTick == -1 ) ) {
if ( m_pNextPatterns->get_size() > 0 ) {
+ //< Add the next pattern to the list instead of replace.
+ if ( !m_bAppendNextPattern ) {
+ _INFOLOG ( "Delete current pattern" );
+ m_pPlayingPatterns->clear();
+ }
+
Pattern * p;
for ( uint i = 0;
i < m_pNextPatterns->get_size();
------------------------------------------------------------------------------
_______________________________________________
Hydrogen-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/hydrogen-devel