// // Created by rick on 28-01-21. // #include "kprint.h" #define MAX_HANDLERS 8 kprint_handler handlers[MAX_HANDLERS] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, }; void kprint_register(kprint_handler handler) { for (int i = 0; i < MAX_HANDLERS; ++i) { if (handlers[i] == NULL) { handlers[i] = handler; break; } } // todo handle } void kprint(char *msg) { for (int i = 0; i < MAX_HANDLERS; ++i) { if (handlers[i] == NULL) { continue; } handlers[i](msg); } }