model.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #ifndef _PCILIB_MODEL_H
  2. #define _PCILIB_MODEL_H
  3. #include <pcilib/bank.h>
  4. #include <pcilib/register.h>
  5. #include <pcilib/dma.h>
  6. #include <pcilib/event.h>
  7. #include <pcilib/export.h>
  8. #include <pcilib/view.h>
  9. typedef struct {
  10. const pcilib_version_t interface_version;
  11. const pcilib_event_api_description_t *api;
  12. const pcilib_dma_description_t *dma;
  13. const pcilib_register_description_t *registers;
  14. const pcilib_register_bank_description_t *banks;
  15. const pcilib_register_protocol_description_t *protocols;
  16. const pcilib_register_range_t *ranges;
  17. const pcilib_view_description_t **views;
  18. const pcilib_unit_description_t *units;
  19. const pcilib_event_description_t *events;
  20. const pcilib_event_data_type_description_t *data_types;
  21. const char *name;
  22. const char *description;
  23. } pcilib_model_description_t;
  24. #ifdef __cplusplus
  25. extern "C" {
  26. #endif
  27. const pcilib_model_description_t *pcilib_get_model_description(pcilib_t *ctx);
  28. #ifdef __cplusplus
  29. }
  30. #endif
  31. #endif /* _PCILIB_MODEL_H */