1 #define WANT_ARCAN_SHMIF_HELPER 2 #include "../arcan_shmif.h" 3 #include "../shmif_privext.h" 4 5 struct arcan_shmifext_setup arcan_shmifext_defaults( 6 struct arcan_shmif_cont* con) 7 { 8 return (struct arcan_shmifext_setup){}; 9 } 10 11 enum shmifext_setup_status arcan_shmifext_setup( 12 struct arcan_shmif_cont* con, 13 struct arcan_shmifext_setup arg) 14 { 15 return SHMIFEXT_NO_API; 16 } 17 18 int arcan_shmifext_isext(struct arcan_shmif_cont* con) 19 { 20 return 0; 21 } 22 23 int arcan_shmifext_dev(struct arcan_shmif_cont* con, 24 uintptr_t* dev, bool clone) 25 { 26 if (dev) 27 *dev = 0; 28 29 return -1; 30 } 31 32 void arcan_shmifext_free_color( 33 struct arcan_shmif_cont* con, struct shmifext_color_buffer* out) 34 { 35 } 36 37 bool arcan_shmifext_alloc_color( 38 struct arcan_shmif_cont* con, struct shmifext_color_buffer* out) 39 { 40 return false; 41 } 42 43 size_t arcan_shmifext_signal_planes( 44 struct arcan_shmif_cont* c, 45 int mask, 46 size_t n_planes, 47 struct shmifext_buffer_plane* planes 48 ) 49 { 50 return 0; 51 } 52 53 size_t arcan_shmifext_export_image( 54 struct arcan_shmif_cont* con, 55 uintptr_t display, uintptr_t tex_id, 56 size_t plane_limit, struct shmifext_buffer_plane* planes) 57 { 58 return 0; 59 } 60 61 bool arcan_shmifext_import_buffer( 62 struct arcan_shmif_cont* c, 63 int format, 64 struct shmifext_buffer_plane* planes, 65 size_t n_planes, 66 size_t buffer_plane_sz 67 ) 68 { 69 return false; 70 } 71 72 bool platform_video_map_handle(struct agp_vstore* store, int64_t handle) 73 { 74 return false; 75 } 76 77 bool arcan_shmifext_gl_handles(struct arcan_shmif_cont* con, 78 uintptr_t* frame, uintptr_t* color, uintptr_t* depth) 79 { 80 return false; 81 } 82 83 bool arcan_shmifext_drop(struct arcan_shmif_cont* con) 84 { 85 return false; 86 } 87 88 bool arcan_shmifext_drop_context(struct arcan_shmif_cont* con) 89 { 90 return false; 91 } 92 93 void* arcan_shmifext_lookup( 94 struct arcan_shmif_cont* con, const char* fun) 95 { 96 return NULL; 97 } 98 99 bool arcan_shmifext_make_current(struct arcan_shmif_cont* con) 100 { 101 return false; 102 } 103 104 bool arcan_shmifext_egl(struct arcan_shmif_cont* con, 105 void** display, void*(*lookupfun)(void*, const char*), void* tag) 106 { 107 return false; 108 } 109 110 bool arcan_shmifext_vk(struct arcan_shmif_cont* con, 111 void** display, void*(*lookupfun)(void*, const char*), void* tag) 112 { 113 return false; 114 } 115 116 void arcan_shmifext_swap_context( 117 struct arcan_shmif_cont* con, unsigned context) 118 { 119 } 120 121 unsigned arcan_shmifext_add_context( 122 struct arcan_shmif_cont* con, struct arcan_shmifext_setup arg) 123 { 124 return 0; 125 } 126 127 void arcan_shmifext_bufferfail(struct arcan_shmif_cont* cont, bool fl) 128 { 129 } 130 131 int arcan_shmifext_signal(struct arcan_shmif_cont* con, 132 uintptr_t display, int mask, uintptr_t tex_id, ...) 133 { 134 return -1; 135 } 136 137 bool arcan_shmifext_gltex_handle(struct arcan_shmif_cont* con, 138 uintptr_t display, uintptr_t tex_id, 139 int* dhandle, size_t* dstride, int* dfmt) 140 { 141 return false; 142 } 143 144 struct agp_fenv* arcan_shmifext_getfenv(struct arcan_shmif_cont* con) 145 { 146 return NULL; 147 } 148 149 bool arcan_shmifext_egl_meta(struct arcan_shmif_cont* con, 150 uintptr_t* display, uintptr_t* surface, uintptr_t* context) 151 { 152 return false; 153 } 154