command.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef COMMAND_H
  2. #define COMMAND_H
  3. // Включение необходимых стандартных библиотек
  4. #include <stdint.h>
  5. #include <stddef.h>
  6. // Определение констант
  7. // Определение макросов
  8. // Объявление глобальных переменных
  9. extern volatile int sockfd;
  10. extern volatile int pci_fd;
  11. extern void *bar1;
  12. typedef void (*CommandHandler)(const char*);
  13. // Объявление структур
  14. typedef struct {
  15. const char* command;
  16. CommandHandler handler;
  17. } Command;
  18. // Определяем тип функции преобразования
  19. typedef void (*ConvertFunc)(const char *str, void *output);
  20. // Прототипы функций
  21. void handleCloseSignal(int signal);
  22. void handleFreqCmd(const char* recvBuff);
  23. void handleLdCmd(const char* recvBuff);
  24. void handlePowCmd(const char* recvBuff);
  25. void handleArmCmd(const char* recvBuff);
  26. void handleAttCmd(const char* recvBuff);
  27. void handleIdnCmd(const char* recvBuff);
  28. void processCommand(const char* recvBuff);
  29. void convertToUInt16(const char *str, void *output);
  30. void convertToUint64(const char *str, void *output);
  31. void convertToDouble(const char *str, void *output);
  32. void splitLexeme(const char *ptrSCPI, void *numOutAndValue, size_t elementSize, ConvertFunc convertFunc);
  33. #endif /* COMMAND_H */