internal delegate void OnIncomingHeadersNative()

in aws-crt-http/HttpConnection.cs [157:201]


            internal delegate void OnIncomingHeadersNative(
                                    Int32 responseCode,
                                    [MarshalAs(UnmanagedType.I4)] HeaderBlock headerBlock,
                                    [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex=3)] HttpHeader[] headers, 
                                    UInt32 count);
            internal delegate void OnIncomingHeaderBlockDoneNative(
                                    [MarshalAs(UnmanagedType.I4)] HeaderBlock headerBlock);
            internal delegate void OnIncomingBodyNative(
                                    [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex=1)] byte[] buffer,
                                    UInt64 size);
            internal delegate void OnStreamCompleteNative(int errorCode);

            private static LibraryHandle library = new LibraryHandle();

            [UnmanagedFunctionPointerAttribute(CallingConvention.Cdecl)]
            public delegate Handle aws_dotnet_http_stream_new(
                                    IntPtr connection,
                                    [MarshalAs(UnmanagedType.LPStr)] string method,
                                    [MarshalAs(UnmanagedType.LPStr)] string uri,
                                    [In] HttpHeader[] headers,
                                    UInt32 header_count,
                                    [In] CrtStreamWrapper.DelegateTable streamDelegateTable,
                                    OnIncomingHeadersNative onIncomingHeaders,
                                    OnIncomingHeaderBlockDoneNative onIncomingHeaderBlockDone,
                                    OnIncomingBodyNative onIncomingBody,
                                    OnStreamCompleteNative onStreamComplete);

            [UnmanagedFunctionPointerAttribute(CallingConvention.Cdecl)]
            public delegate void aws_dotnet_http_stream_destroy(IntPtr stream);

            [UnmanagedFunctionPointerAttribute(CallingConvention.Cdecl)]
            public delegate void aws_dotnet_http_stream_update_window(IntPtr stream, UInt64 incrementSize);

            [UnmanagedFunctionPointerAttribute(CallingConvention.Cdecl)]
            internal delegate void aws_dotnet_http_stream_activate(IntPtr stream);

            public static aws_dotnet_http_stream_new make_new = NativeAPI.Bind<aws_dotnet_http_stream_new>();
            public static aws_dotnet_http_stream_destroy destroy = NativeAPI.Bind<aws_dotnet_http_stream_destroy>();
            public static aws_dotnet_http_stream_update_window update_window = NativeAPI.Bind<aws_dotnet_http_stream_update_window>();

            public static aws_dotnet_http_stream_activate activate = NativeAPI.Bind<aws_dotnet_http_stream_activate>();
        }

        public class Handle : CRT.Handle
        {