/filesystems/procfs/procfs_windows.h

http://macfuse.googlecode.com/ · C Header · 52 lines · 39 code · 10 blank · 3 comment · 0 complexity · 2b9b87705be49bc2a81a336301ea7871 MD5 · raw file

  1. /*
  2. * MacFUSE-Based procfs
  3. */
  4. #ifndef _PROCFS_WINDOWS_H_
  5. #define _PROCFS_WINDOWS_H_
  6. #include <ApplicationServices/ApplicationServices.h>
  7. #include <CoreFoundation/CoreFoundation.h>
  8. extern "C" {
  9. typedef mach_port_t CGSConnectionID;
  10. typedef mach_port_t CGSWindowID;
  11. extern CGSConnectionID _CGSDefaultConnection(void);
  12. extern CGError CGSGetWindowLevel(CGSConnectionID connectionID,
  13. CGSWindowID windowID, CGWindowLevel *level);
  14. extern CGError CGSGetConnectionIDForPSN(CGSConnectionID connectionID,
  15. ProcessSerialNumber *psn,
  16. CGSConnectionID *out);
  17. extern CGError CGSGetOnScreenWindowList(CGSConnectionID connectionID,
  18. CGSConnectionID targetConnectionID,
  19. int maxCount,
  20. CGSWindowID *windowList,
  21. int *outCount);
  22. extern CGError CGSGetWindowList(CGSConnectionID connectionID,
  23. CGSConnectionID targetConnectionID,
  24. int maxCount,
  25. CGSWindowID *windowList,
  26. int *outCount);
  27. extern CGError CGSGetScreenRectForWindow(CGSConnectionID connectionID,
  28. CGSWindowID windowID, CGRect *outRect);
  29. extern CGError CGSGetParentWindowList(CGSConnectionID connectionID,
  30. CGSConnectionID targetConnectionID,
  31. int maxCount,
  32. CGSWindowID *windowList,
  33. int *outCount);
  34. int PROCFS_GetPNGForWindowAtIndex(CGWindowID index, CFMutableDataRef *data);
  35. off_t PROCFS_GetPNGSizeForWindowAtIndex(CGWindowID index);
  36. struct ProcfsWindowData {
  37. CFMutableDataRef window_png;
  38. size_t len;
  39. size_t max_len;
  40. };
  41. } /* extern "C" */
  42. #endif /* _PROCFS_WINDOWS_H_ */