Add wave mode function parameter for direction

This commit is contained in:
Adam Honse 2021-04-15 23:42:30 -05:00
parent b8f044b296
commit c83ab4bbf6
4 changed files with 29 additions and 27 deletions

View file

@ -249,7 +249,7 @@ void RGBController_Razer::DeviceUpdateMode()
break;
case RAZER_MODE_WAVE:
controller->SetModeWave();
controller->SetModeWave('0');
break;
}
}

View file

@ -56,24 +56,28 @@ RGBController_RazerAddressable::RGBController_RazerAddressable(RazerController*
SpectrumCycle.color_mode = MODE_COLORS_NONE;
modes.push_back(SpectrumCycle);
// Wave disabled until proper detection
//mode Wave;
//Wave.name = "Wave";
//Wave.value = RAZER_ADDRESSABLE_MODE_WAVE;
//Wave.flags = 0;
//Wave.color_mode = MODE_COLORS_NONE;
//modes.push_back(Wave);
if(controller->SupportsWave())
{
mode Wave;
Wave.name = "Wave";
Wave.value = RAZER_ADDRESSABLE_MODE_WAVE;
Wave.flags = 0;
Wave.color_mode = MODE_COLORS_NONE;
modes.push_back(Wave);
}
// Reactive disabled, not yet implemented
//mode Reactive;
//Reactive.name = "Reactive";
//Reactive.value = RAZER_ADDRESSABLE_MODE_REACTIVE;
//Reactive.flags = MODE_FLAG_HAS_MODE_SPECIFIC_COLOR;
//Reactive.color_mode = MODE_COLORS_MODE_SPECIFIC;
//Reactive.colors_min = 1;
//Reactive.colors_max = 1;
//Reactive.colors.resize(1);
//modes.push_back(Reactive);
if(controller->SupportsReactive())
{
mode Reactive;
Reactive.name = "Reactive";
Reactive.value = RAZER_ADDRESSABLE_MODE_REACTIVE;
Reactive.flags = MODE_FLAG_HAS_MODE_SPECIFIC_COLOR;
Reactive.color_mode = MODE_COLORS_MODE_SPECIFIC;
Reactive.colors_min = 1;
Reactive.colors_max = 1;
Reactive.colors.resize(1);
modes.push_back(Reactive);
}
SetupZones();
}
@ -287,7 +291,7 @@ void RGBController_RazerAddressable::DeviceUpdateMode()
break;
case RAZER_ADDRESSABLE_MODE_WAVE:
controller->SetModeWave();
controller->SetModeWave('0');
break;
}
}

View file

@ -367,9 +367,9 @@ void RazerController::SetModeStatic(unsigned char red, unsigned char grn, unsign
razer_set_mode_static(red, grn, blu);
}
void RazerController::SetModeWave()
void RazerController::SetModeWave(unsigned char direction)
{
razer_set_mode_wave();
razer_set_mode_wave(direction);
}
bool RazerController::SupportsReactive()
@ -1385,13 +1385,11 @@ void RazerController::razer_set_mode_static(unsigned char red, unsigned char grn
}
}
void RazerController::razer_set_mode_wave()
void RazerController::razer_set_mode_wave(unsigned char direction)
{
unsigned char direction = 0x01;
razer_report report;
switch(dev_pid)
switch(matrix_type)
{
case RAZER_MATRIX_TYPE_STANDARD:
case RAZER_MATRIX_TYPE_LINEAR:

View file

@ -178,7 +178,7 @@ public:
void SetModeOff();
void SetModeSpectrumCycle();
void SetModeStatic(unsigned char red, unsigned char grn, unsigned char blu);
void SetModeWave();
void SetModeWave(unsigned char direction);
bool SupportsReactive();
bool SupportsWave();
@ -268,7 +268,7 @@ private:
void razer_set_mode_none();
void razer_set_mode_spectrum_cycle();
void razer_set_mode_static(unsigned char red, unsigned char grn, unsigned char blu);
void razer_set_mode_wave();
void razer_set_mode_wave(unsigned char direction);
int razer_usb_receive(razer_report* report);
int razer_usb_send(razer_report* report);