window-utils.h 838 B

1234567891011121314151617181920212223242526272829303132333435
  1. #import <CoreGraphics/CGWindow.h>
  2. #import <Cocoa/Cocoa.h>
  3. #include <util/threading.h>
  4. #include <obs-module.h>
  5. struct cocoa_window {
  6. CGWindowID window_id;
  7. int owner_pid;
  8. pthread_mutex_t name_lock;
  9. NSString *owner_name;
  10. NSString *window_name;
  11. uint64_t next_search_time;
  12. };
  13. typedef struct cocoa_window *cocoa_window_t;
  14. NSArray *enumerate_cocoa_windows(void);
  15. NSArray *filter_nonzero_kcgwindowlayer_sources(NSArray *windows_arr);
  16. bool find_window(cocoa_window_t cw, obs_data_t *settings, bool force);
  17. void init_window(cocoa_window_t cw, obs_data_t *settings);
  18. void destroy_window(cocoa_window_t cw);
  19. void update_window(cocoa_window_t cw, obs_data_t *settings);
  20. void window_defaults(obs_data_t *settings);
  21. void add_window_properties(obs_properties_t *props);
  22. void show_window_properties(obs_properties_t *props, bool show);