vncs.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /*
  2. * This file is part of the UCB release of Plan 9. It is subject to the license
  3. * terms in the LICENSE file found in the top-level directory of this
  4. * distribution and at http://akaros.cs.berkeley.edu/files/Plan9License. No
  5. * part of the UCB release of Plan 9, including this file, may be copied,
  6. * modified, propagated, or distributed except according to the terms contained
  7. * in the LICENSE file.
  8. */
  9. typedef struct Rlist Rlist;
  10. typedef struct Vncs Vncs;
  11. struct Rlist
  12. {
  13. Rectangle bbox;
  14. int maxrect;
  15. int nrect;
  16. Rectangle *rect;
  17. };
  18. struct Vncs
  19. {
  20. Vnc;
  21. Vncs *next;
  22. char remote[NETPATHLEN];
  23. char netpath[NETPATHLEN];
  24. char *encname;
  25. int (*countrect)(Vncs*, Rectangle);
  26. int (*sendrect)(Vncs*, Rectangle);
  27. int copyrect;
  28. int canwarp;
  29. int needwarp;
  30. Point warppt;
  31. int updaterequest;
  32. Rlist rlist;
  33. int ndead;
  34. int nproc;
  35. int cursorver;
  36. Point cursorpos;
  37. Rectangle cursorr;
  38. int snarfvers;
  39. Memimage *image;
  40. ulong imagechan;
  41. };
  42. /* rre.c */
  43. int countcorre(Vncs*, Rectangle);
  44. int counthextile(Vncs*, Rectangle);
  45. int countraw(Vncs*, Rectangle);
  46. int countrre(Vncs*, Rectangle);
  47. int sendcorre(Vncs*, Rectangle);
  48. int sendhextile(Vncs*, Rectangle);
  49. int sendraw(Vncs*, Rectangle);
  50. int sendrre(Vncs*, Rectangle);
  51. /* rlist.c */
  52. void addtorlist(Rlist*, Rectangle);
  53. void freerlist(Rlist*);