aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/core/surface/call.h
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2015-01-20 09:29:28 -0800
committerGravatar Craig Tiller <craig.tiller@gmail.com>2015-01-27 13:54:14 -0800
commitcce17ac033ac89563141f8c4cad9c842adac37ef (patch)
treea38cfe75367bcd1790c467be818a7afbf13fd319 /src/core/surface/call.h
parent79d9a990ff89fd12821a2c88631e194c8da4342d (diff)
First compiling version of the new C api.
Diffstat (limited to 'src/core/surface/call.h')
-rw-r--r--src/core/surface/call.h17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/core/surface/call.h b/src/core/surface/call.h
index 804b387cb1..2da40607c5 100644
--- a/src/core/surface/call.h
+++ b/src/core/surface/call.h
@@ -38,6 +38,9 @@
#include "src/core/channel/metadata_buffer.h"
#include <grpc/grpc.h>
+typedef void (*grpc_ioreq_completion_func)(grpc_call *call, grpc_op_error status,
+ void *user_data);
+
grpc_call *grpc_call_create(grpc_channel *channel,
const void *server_transport_data);
@@ -47,14 +50,15 @@ void grpc_call_internal_unref(grpc_call *call);
/* Helpers for grpc_client, grpc_server filters to publish received data to
the completion queue/surface layer */
void grpc_call_recv_metadata(grpc_call_element *surface_element,
- grpc_call_op *op);
+ grpc_mdelem *md);
void grpc_call_recv_message(
- grpc_call_element *surface_element, grpc_byte_buffer *message,
- void (*on_finish)(void *user_data, grpc_op_error error), void *user_data);
-void grpc_call_recv_finish(grpc_call_element *surface_element,
- int is_full_close);
+ grpc_call_element *surface_element, grpc_byte_buffer *message);
+void grpc_call_read_closed(grpc_call_element *surface_element);
+void grpc_call_stream_closed(grpc_call_element *surface_element);
void grpc_call_execute_op(grpc_call *call, grpc_call_op *op);
+grpc_call_error grpc_call_start_ioreq_and_call_back(grpc_call *call, const grpc_ioreq *reqs,
+ size_t nreqs, grpc_ioreq_completion_func on_complete, void *user_data);
/* Called when it's known that the initial batch of metadata is complete on the
client side (must not be called on the server) */
@@ -69,9 +73,6 @@ grpc_call_stack *grpc_call_get_call_stack(grpc_call *call);
/* Given the top call_element, get the call object. */
grpc_call *grpc_call_from_top_element(grpc_call_element *surface_element);
-/* Get the metadata buffer. */
-grpc_metadata_buffer *grpc_call_get_metadata_buffer(grpc_call *call);
-
void grpc_call_add_mdelem(grpc_call *call, grpc_mdelem *mdelem,
gpr_uint32 flags);