Quellcode durchsuchen

Macro cleanup.

- Preparation for KLL support
simple
Jacob Alexander vor 10 Jahren
Ursprung
Commit
c1f8a2c545
1 geänderte Dateien mit 15 neuen und 47 gelöschten Zeilen
  1. 15
    47
      Macro/PartialMap/macro.c

+ 15
- 47
Macro/PartialMap/macro.c Datei anzeigen

} }




// Evaluate/Update the TriggerMacro
// Evaluate/Update TriggerMacro
void Macro_evalTriggerMacro( TriggerMacro *triggerMacro ) void Macro_evalTriggerMacro( TriggerMacro *triggerMacro )
{ {
// Which combo in the sequence is being evaluated // Which combo in the sequence is being evaluated
uint8_t comboLength = triggerMacro->guide[ comboPos ]; uint8_t comboLength = triggerMacro->guide[ comboPos ];


// Iterate over list of keys currently pressed // Iterate over list of keys currently pressed
for ( uint8_t keyPressed = 0; keyPressed < macroTriggerListBufferSize; keyPressed += 2 )
for ( uint8_t keyPressed = 0; keyPressed < macroTriggerListBufferSize; keyPressed++ )
{ {
// Compare with keys in combo // Compare with keys in combo
for ( unsigned int comboKey = 0; comboKey < comboLength; comboKey++ ) for ( unsigned int comboKey = 0; comboKey < comboLength; comboKey++ )
} }






/*
inline void Macro_bufferAdd( uint8_t byte )
// Evaluate/Update ResultMacro
void Macro_evalResultMacro( ResultMacro *resultMacro )
{ {
// Make sure we haven't overflowed the key buffer
// Default function for adding keys to the KeyIndex_Buffer, does a DefaultMap_Lookup
if ( KeyIndex_BufferUsed < KEYBOARD_BUFFER )
{
uint8_t key = DefaultMap_Lookup[byte];
for ( uint8_t c = 0; c < KeyIndex_BufferUsed; c++ )
{
// Key already in the buffer
if ( KeyIndex_Buffer[c] == key )
return;
}

// Add to the buffer
KeyIndex_Buffer[KeyIndex_BufferUsed++] = key;
}
// TODO
} }


inline void Macro_bufferRemove( uint8_t byte )
{
uint8_t key = DefaultMap_Lookup[byte];

// Check for the released key, and shift the other keys lower on the buffer
for ( uint8_t c = 0; c < KeyIndex_BufferUsed; c++ )
{
// Key to release found
if ( KeyIndex_Buffer[c] == key )
{
// Shift keys from c position
for ( uint8_t k = c; k < KeyIndex_BufferUsed - 1; k++ )
KeyIndex_Buffer[k] = KeyIndex_Buffer[k + 1];

// Decrement Buffer
KeyIndex_BufferUsed--;

return;
}
}

// Error case (no key to release)
erro_msg("Could not find key to release: ");
printHex( key );
}
*/


// Called immediately after USB has finished sending a buffer
inline void Macro_finishWithUSBBuffer( uint8_t sentKeys ) inline void Macro_finishWithUSBBuffer( uint8_t sentKeys )
{ {
// XXX Currently not used to trigger anything (with this particular Macro module)
} }



// Macro Procesing Loop
// Called once per USB buffer send
inline void Macro_process() inline void Macro_process()
{ {
// Only do one round of macro processing between Output Module timer sends // Only do one round of macro processing between Output Module timer sends
// Lookup trigger list for this key // Lookup trigger list for this key
unsigned int *triggerList = Macro_layerLookup( scanCode ); unsigned int *triggerList = Macro_layerLookup( scanCode );


// Skip, if no trigger list
if ( triggerList == 0 )
continue;

// The first element is the length of the trigger list // The first element is the length of the trigger list
unsigned int triggerListSize = triggerList[0]; unsigned int triggerListSize = triggerList[0];


} }
} }



inline void Macro_setup() inline void Macro_setup()
{ {
// Register Macro CLI dictionary // Register Macro CLI dictionary