mirror of
https://github.com/suchmememanyskill/CYD-Klipper.git
synced 2026-03-21 05:33:24 +00:00
Implement fetchdatamin
This commit is contained in:
@@ -156,7 +156,14 @@ void fetch_printer_data()
|
|||||||
|
|
||||||
void fetch_printer_data_minimal()
|
void fetch_printer_data_minimal()
|
||||||
{
|
{
|
||||||
// TODO
|
PrinterDataMinimal* data = (PrinterDataMinimal*)malloc(sizeof(PrinterDataMinimal) * get_printer_count());
|
||||||
|
for (int i = 0; i < get_printer_count(); i++)
|
||||||
|
{
|
||||||
|
BasePrinter* printer = get_printer(i);
|
||||||
|
*(data + i) = printer->fetch_min();
|
||||||
|
}
|
||||||
|
announce_printer_data_minimal(data);
|
||||||
|
free(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
void data_loop()
|
void data_loop()
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
#include "printer_integration.hpp"
|
#include "printer_integration.hpp"
|
||||||
|
|
||||||
unsigned char current_printer_index = 0;
|
unsigned char current_printer_index = 0;
|
||||||
|
unsigned char total_printers;
|
||||||
BasePrinter* registered_printers;
|
BasePrinter* registered_printers;
|
||||||
|
PrinterDataMinimal* minimal_data_copy;
|
||||||
PrinterData* printer_data_copy;
|
PrinterData* printer_data_copy;
|
||||||
|
|
||||||
BasePrinter::BasePrinter(unsigned char index)
|
BasePrinter::BasePrinter(unsigned char index)
|
||||||
@@ -75,3 +77,14 @@ PrinterData* get_current_printer_data()
|
|||||||
{
|
{
|
||||||
return printer_data_copy;
|
return printer_data_copy;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
unsigned int get_printer_count()
|
||||||
|
{
|
||||||
|
return total_printers;
|
||||||
|
}
|
||||||
|
|
||||||
|
void announce_printer_data_minimal(PrinterDataMinimal* printer_data)
|
||||||
|
{
|
||||||
|
memcpy(printer_data_copy, printer_data, sizeof(PrinterDataMinimal) * total_printers);
|
||||||
|
lv_msg_send(DATA_PRINTER_MINIMAL, get_current_printer());
|
||||||
|
}
|
||||||
@@ -167,3 +167,5 @@ BasePrinter* get_current_printer();
|
|||||||
BasePrinter* get_printer(int idx);
|
BasePrinter* get_printer(int idx);
|
||||||
void initialize_printers();
|
void initialize_printers();
|
||||||
PrinterData* get_current_printer_data();
|
PrinterData* get_current_printer_data();
|
||||||
|
unsigned int get_printer_count();
|
||||||
|
void announce_printer_data_minimal(PrinterDataMinimal* printer_data);
|
||||||
Reference in New Issue
Block a user