public static extern void adl_connect(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLConnectionDescription connDescr);
public static extern void adl_stop_local_video( adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque);
public static extern void adl_get_screen_capture_sources( adl_get_screen_capture_srcs_rclbck_t rclbck, ADLH handle, IntPtr opaque, int targetWidth);
public static extern void adl_stop_render(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, int rendererId);
public static extern void adl_get_version( adl_string_rclbck_t resultHandler, ADLH handle, IntPtr opaque);
public static extern void adl_unpublish(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLString scopeId, ref ADLString what);
public static extern void adl_stop_measuring_stats(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLString scopeId);
public static extern void adl_set_audio_output_device( adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLString device_id);
public static extern void adl_get_audio_output_device( adl_string_rclbck_t rclbck, ADLH handle, IntPtr opaque);
public static extern void adl_get_video_capture_device( adl_string_rclbck_t rclbck, ADLH handle, IntPtr opaque);
public static extern void adl_get_audio_capture_device_names( adl_get_device_names_rclbck_t rclbck, ADLH handle, IntPtr opaque);
public static extern void adl_set_video_capture_device( adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLString device_id);
public static extern void adl_add_service_listener( adl_void_rclbck_t resultHandler, ADLH handle, IntPtr opaque, ref ADLServiceListener listener);
public static extern void adl_set_application_id(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, long applicationId);
public static extern void adl_disconnect(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLString scopeId);
public static extern void adl_stop_playing_test_sound( adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque);
public static extern void adl_publish(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLString scopeId, ref ADLString what, ref ADLMediaPublishOptions options);
public static extern void adl_set_volume( adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, int volume);
public static extern void adl_send_message(adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLString scopeId, [MarshalAs(UnmanagedType.LPStr)] string msgBody, UIntPtr msgSize, ref Int64 recipientId);
public static extern void adl_get_volume( adl_int_rclbck_t rclbck, ADLH handle, IntPtr opaque);
public static extern void adl_render_sink(adl_int_rclbck_t rclbck, ADLH handle, IntPtr opaque, ref ADLRenderRequest request);
public static extern void adl_monitor_mic_activity( adl_void_rclbck_t rclbck, ADLH handle, IntPtr opaque, bool monitor);
public static extern void adl_draw(ADLH handle, ref ADLDrawRequest request);
public static extern int adl_release_platform(ADLH handle);