pcipywrap.i 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. %module pcipywrap
  2. %{
  3. #include "pcipywrap.h"
  4. %}
  5. extern void redirect_logs_to_exeption();
  6. typedef struct {
  7. %extend {
  8. pcipywrap(const char* fpga_device = "/dev/fpga0", const char* model = NULL);
  9. pcipywrap(PyObject* ctx){return create_pcipywrap(ctx);}
  10. ~pcipywrap();
  11. PyObject* read_register(const char *regname = NULL, const char *bank = NULL);
  12. PyObject* write_register(PyObject* val, const char *regname, const char *bank = NULL);
  13. PyObject* get_property(const char *prop);
  14. PyObject* set_property(PyObject* val, const char *prop);
  15. PyObject* get_registers_list(const char *bank = NULL);
  16. PyObject* get_register_info(const char* reg,const char *bank = NULL);
  17. PyObject* get_property_list(const char* branch = NULL);
  18. PyObject* read_dma(unsigned char dma, size_t size);
  19. PyObject* lock_global();
  20. void unlock_global();
  21. PyObject* lock(const char *lock_id);
  22. PyObject* lock_persistent(const char *lock_id);
  23. PyObject* try_lock(const char *lock_id);
  24. PyObject* try_lock_persistent(const char *lock_id);
  25. PyObject* unlock(const char *lock_id);
  26. PyObject* unlock_persistent(const char *lock_id);
  27. }
  28. } pcipywrap;