Allow for server side controller resizing
* Save sizes profile on the server * Update RGBController_Network size on the client
This commit is contained in:
parent
3f79cc41c8
commit
f3eac499d4
3 changed files with 11 additions and 3 deletions
|
|
@ -320,7 +320,7 @@ int NetworkClient::recv_select(SOCKET s, char *buf, int len, int flags)
|
||||||
{
|
{
|
||||||
timeout.tv_sec = 5;
|
timeout.tv_sec = 5;
|
||||||
timeout.tv_usec = 0;
|
timeout.tv_usec = 0;
|
||||||
|
|
||||||
FD_ZERO(&set); /* clear the set */
|
FD_ZERO(&set); /* clear the set */
|
||||||
FD_SET(s, &set); /* add our file descriptor to the set */
|
FD_SET(s, &set); /* add our file descriptor to the set */
|
||||||
|
|
||||||
|
|
@ -339,7 +339,7 @@ int NetworkClient::recv_select(SOCKET s, char *buf, int len, int flags)
|
||||||
// socket has something to read
|
// socket has something to read
|
||||||
return(recv(s, buf, len, flags));
|
return(recv(s, buf, len, flags));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -545,6 +545,10 @@ void NetworkClient::ProcessReply_ControllerData(unsigned int /*data_size*/, char
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
server_controllers[dev_idx]->active_mode = new_controller->active_mode;
|
server_controllers[dev_idx]->active_mode = new_controller->active_mode;
|
||||||
|
for(unsigned int i = 0; i < server_controllers[dev_idx]->zones.size(); i++)
|
||||||
|
{
|
||||||
|
server_controllers[dev_idx]->zones[i].leds_count = new_controller->zones[i].leds_count;
|
||||||
|
}
|
||||||
delete new_controller;
|
delete new_controller;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -620,6 +620,7 @@ void NetworkServer::ListenThreadFunction(NetworkClientInfo * client_info)
|
||||||
memcpy(&new_size, data + sizeof(int), sizeof(int));
|
memcpy(&new_size, data + sizeof(int), sizeof(int));
|
||||||
|
|
||||||
controllers[header.pkt_dev_idx]->ResizeZone(zone, new_size);
|
controllers[header.pkt_dev_idx]->ResizeZone(zone, new_size);
|
||||||
|
profile_manager->SaveProfile("sizes", true);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
@ -858,7 +859,7 @@ void NetworkServer::SendReply_ControllerData(SOCKET client_sock, unsigned int de
|
||||||
unsigned int reply_size;
|
unsigned int reply_size;
|
||||||
|
|
||||||
memcpy(&reply_size, reply_data, sizeof(reply_size));
|
memcpy(&reply_size, reply_data, sizeof(reply_size));
|
||||||
|
|
||||||
reply_hdr.pkt_magic[0] = 'O';
|
reply_hdr.pkt_magic[0] = 'O';
|
||||||
reply_hdr.pkt_magic[1] = 'R';
|
reply_hdr.pkt_magic[1] = 'R';
|
||||||
reply_hdr.pkt_magic[2] = 'G';
|
reply_hdr.pkt_magic[2] = 'G';
|
||||||
|
|
|
||||||
|
|
@ -24,6 +24,9 @@ void RGBController_Network::SetupZones()
|
||||||
void RGBController_Network::ResizeZone(int zone, int new_size)
|
void RGBController_Network::ResizeZone(int zone, int new_size)
|
||||||
{
|
{
|
||||||
client->SendRequest_RGBController_ResizeZone(dev_idx, zone, new_size);
|
client->SendRequest_RGBController_ResizeZone(dev_idx, zone, new_size);
|
||||||
|
|
||||||
|
client->SendRequest_ControllerData(dev_idx);
|
||||||
|
client->WaitOnControllerData();
|
||||||
}
|
}
|
||||||
|
|
||||||
void RGBController_Network::DeviceUpdateLEDs()
|
void RGBController_Network::DeviceUpdateLEDs()
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue