aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc/ref/c++
diff options
context:
space:
mode:
authorGravatar Craig Tiller <ctiller@google.com>2015-08-05 08:18:21 -0700
committerGravatar Craig Tiller <ctiller@google.com>2015-08-05 08:18:21 -0700
commit68f4e0f6abc6bb99ff334542d5b5003edc3e651e (patch)
tree320e1f4aa189f06af9dbccce9f709c9c36c3bb6c /doc/ref/c++
parent3bbacf1b5ece50a8f9a945c88e2f81d3f8594e47 (diff)
Initial Doxygen import for core, c++
Diffstat (limited to 'doc/ref/c++')
-rw-r--r--doc/ref/c++/html/annotated.html201
-rw-r--r--doc/ref/c++/html/async__generic__service_8h.html128
-rw-r--r--doc/ref/c++/html/async__generic__service_8h_source.html194
-rw-r--r--doc/ref/c++/html/async__unary__call_8h.html128
-rw-r--r--doc/ref/c++/html/async__unary__call_8h_source.html293
-rw-r--r--doc/ref/c++/html/auth__context_8h.html119
-rw-r--r--doc/ref/c++/html/auth__context_8h_source.html176
-rw-r--r--doc/ref/c++/html/auth__property__iterator_8h.html126
-rw-r--r--doc/ref/c++/html/auth__property__iterator_8h_source.html187
-rw-r--r--doc/ref/c++/html/bc_s.pngbin0 -> 676 bytes
-rw-r--r--doc/ref/c++/html/bdwn.pngbin0 -> 147 bytes
-rw-r--r--doc/ref/c++/html/byte__buffer_8h.html126
-rw-r--r--doc/ref/c++/html/byte__buffer_8h_source.html221
-rw-r--r--doc/ref/c++/html/call_8h.html173
-rw-r--r--doc/ref/c++/html/call_8h_source.html745
-rw-r--r--doc/ref/c++/html/channel__arguments_8h.html123
-rw-r--r--doc/ref/c++/html/channel__arguments_8h_source.html207
-rw-r--r--doc/ref/c++/html/channel__interface_8h.html119
-rw-r--r--doc/ref/c++/html/channel__interface_8h_source.html175
-rw-r--r--doc/ref/c++/html/classes.html149
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_async_generic_service.html214
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_async_reader_interface.html182
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_async_writer_interface.html182
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_asynchronous_service.html465
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_auth_context.html266
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_auth_property_iterator.html312
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_bidi_streaming_handler.html187
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_byte_buffer.html272
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call.html282
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_hook.html176
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_no_op.html199
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_client_recv_status.html252
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_client_send_close.html241
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message.html264
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html152
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html183
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_recv_initial_metadata.html242
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_recv_message.html271
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_send_initial_metadata.html313
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_send_message.html272
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_server_send_status.html252
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_set.html278
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_call_op_set_interface.html244
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_channel_arguments.html386
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_channel_interface.html213
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_reader.html297
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_reader_interface.html123
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer.html361
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer_interface.html161
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_response_reader.html253
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_response_reader_interface.html218
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_streaming_interface.html206
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_writer.html327
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_async_writer_interface.html156
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_context.html809
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_reader.html263
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_reader_interface.html153
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_reader_writer.html328
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_reader_writer_interface.html189
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_streaming_handler.html187
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_streaming_interface.html167
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_writer.html275
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_client_writer_interface.html155
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_completion_queue.html689
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_completion_queue_tag.html178
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_credentials.html275
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_dynamic_thread_pool.html190
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_fixed_size_thread_pool.html189
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_generic_server_context.html224
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_generic_stub.html182
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_grpc_library.html164
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_internal_stub.html191
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_method_handler.html174
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_reader_interface.html172
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_rpc_method.html265
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_rpc_method_handler.html187
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_rpc_service.html191
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_rpc_service_method.html201
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_serialization_traits.html119
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html198
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html202
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server.html243
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_async_reader.html302
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_async_reader_writer.html301
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_async_response_writer.html258
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_async_streaming_interface.html195
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_async_writer.html258
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_builder.html356
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_completion_queue.html166
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_context.html760
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_credentials.html166
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_reader.html214
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_reader_writer.html259
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_streaming_handler.html187
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_server_writer.html226
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_slice.html394
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_sneaky_call_op_set.html185
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_status.html300
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_synchronous_service.html165
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_thread_pool_interface.html168
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_time_point.html170
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html166
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html166
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_write_options.html427
-rw-r--r--doc/ref/c++/html/classgrpc_1_1_writer_interface.html210
-rw-r--r--doc/ref/c++/html/classgrpc_1_1condition__variable.html241
-rw-r--r--doc/ref/c++/html/classgrpc_1_1lock__guard.html257
-rw-r--r--doc/ref/c++/html/classgrpc_1_1mutex.html216
-rw-r--r--doc/ref/c++/html/classgrpc_1_1thread.html205
-rw-r--r--doc/ref/c++/html/classgrpc_1_1unique__lock.html210
-rw-r--r--doc/ref/c++/html/client__context_8h.html140
-rw-r--r--doc/ref/c++/html/client__context_8h_source.html329
-rw-r--r--doc/ref/c++/html/client__unary__call_8h.html120
-rw-r--r--doc/ref/c++/html/client__unary__call_8h_source.html194
-rw-r--r--doc/ref/c++/html/closed.pngbin0 -> 132 bytes
-rw-r--r--doc/ref/c++/html/completion__queue_8h.html144
-rw-r--r--doc/ref/c++/html/completion__queue_8h_source.html307
-rw-r--r--doc/ref/c++/html/config_8h.html164
-rw-r--r--doc/ref/c++/html/config_8h_source.html218
-rw-r--r--doc/ref/c++/html/config__protobuf_8h.html210
-rw-r--r--doc/ref/c++/html/config__protobuf_8h_source.html182
-rw-r--r--doc/ref/c++/html/create__channel_8h.html119
-rw-r--r--doc/ref/c++/html/create__channel_8h_source.html157
-rw-r--r--doc/ref/c++/html/credentials_8h.html145
-rw-r--r--doc/ref/c++/html/credentials_8h_source.html270
-rw-r--r--doc/ref/c++/html/dir_ac8b245a5921095c43c106649fd7bc4b.html128
-rw-r--r--doc/ref/c++/html/dir_d44c64559bbebec7f509842c48db8b23.html100
-rw-r--r--doc/ref/c++/html/dir_f1b2ab2a88927c1e950e43c1cf4b634b.html155
-rw-r--r--doc/ref/c++/html/doxygen.css1366
-rw-r--r--doc/ref/c++/html/doxygen.pngbin0 -> 3779 bytes
-rw-r--r--doc/ref/c++/html/dynamic__thread__pool_8h.html123
-rw-r--r--doc/ref/c++/html/dynamic__thread__pool_8h_source.html195
-rw-r--r--doc/ref/c++/html/dynsections.js97
-rw-r--r--doc/ref/c++/html/files.html144
-rw-r--r--doc/ref/c++/html/fixed__size__thread__pool_8h.html122
-rw-r--r--doc/ref/c++/html/fixed__size__thread__pool_8h_source.html180
-rw-r--r--doc/ref/c++/html/ftv2blank.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/c++/html/ftv2cl.pngbin0 -> 453 bytes
-rw-r--r--doc/ref/c++/html/ftv2doc.pngbin0 -> 746 bytes
-rw-r--r--doc/ref/c++/html/ftv2folderclosed.pngbin0 -> 616 bytes
-rw-r--r--doc/ref/c++/html/ftv2folderopen.pngbin0 -> 597 bytes
-rw-r--r--doc/ref/c++/html/ftv2lastnode.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/c++/html/ftv2link.pngbin0 -> 746 bytes
-rw-r--r--doc/ref/c++/html/ftv2mlastnode.pngbin0 -> 246 bytes
-rw-r--r--doc/ref/c++/html/ftv2mnode.pngbin0 -> 246 bytes
-rw-r--r--doc/ref/c++/html/ftv2mo.pngbin0 -> 403 bytes
-rw-r--r--doc/ref/c++/html/ftv2node.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/c++/html/ftv2ns.pngbin0 -> 388 bytes
-rw-r--r--doc/ref/c++/html/ftv2plastnode.pngbin0 -> 229 bytes
-rw-r--r--doc/ref/c++/html/ftv2pnode.pngbin0 -> 229 bytes
-rw-r--r--doc/ref/c++/html/ftv2splitbar.pngbin0 -> 314 bytes
-rw-r--r--doc/ref/c++/html/ftv2vertline.pngbin0 -> 86 bytes
-rw-r--r--doc/ref/c++/html/functions.html193
-rw-r--r--doc/ref/c++/html/functions_a.html198
-rw-r--r--doc/ref/c++/html/functions_b.html157
-rw-r--r--doc/ref/c++/html/functions_c.html280
-rw-r--r--doc/ref/c++/html/functions_d.html153
-rw-r--r--doc/ref/c++/html/functions_e.html144
-rw-r--r--doc/ref/c++/html/functions_enum.html118
-rw-r--r--doc/ref/c++/html/functions_eval.html133
-rw-r--r--doc/ref/c++/html/functions_f.html186
-rw-r--r--doc/ref/c++/html/functions_func.html189
-rw-r--r--doc/ref/c++/html/functions_func_b.html146
-rw-r--r--doc/ref/c++/html/functions_func_c.html252
-rw-r--r--doc/ref/c++/html/functions_func_d.html152
-rw-r--r--doc/ref/c++/html/functions_func_e.html143
-rw-r--r--doc/ref/c++/html/functions_func_f.html182
-rw-r--r--doc/ref/c++/html/functions_func_g.html163
-rw-r--r--doc/ref/c++/html/functions_func_h.html142
-rw-r--r--doc/ref/c++/html/functions_func_i.html139
-rw-r--r--doc/ref/c++/html/functions_func_j.html136
-rw-r--r--doc/ref/c++/html/functions_func_l.html145
-rw-r--r--doc/ref/c++/html/functions_func_m.html145
-rw-r--r--doc/ref/c++/html/functions_func_n.html145
-rw-r--r--doc/ref/c++/html/functions_func_o.html153
-rw-r--r--doc/ref/c++/html/functions_func_p.html143
-rw-r--r--doc/ref/c++/html/functions_func_r.html212
-rw-r--r--doc/ref/c++/html/functions_func_s.html258
-rw-r--r--doc/ref/c++/html/functions_func_t.html144
-rw-r--r--doc/ref/c++/html/functions_func_u.html142
-rw-r--r--doc/ref/c++/html/functions_func_w.html170
-rw-r--r--doc/ref/c++/html/functions_func_~.html235
-rw-r--r--doc/ref/c++/html/functions_g.html171
-rw-r--r--doc/ref/c++/html/functions_h.html143
-rw-r--r--doc/ref/c++/html/functions_i.html146
-rw-r--r--doc/ref/c++/html/functions_j.html137
-rw-r--r--doc/ref/c++/html/functions_l.html147
-rw-r--r--doc/ref/c++/html/functions_m.html150
-rw-r--r--doc/ref/c++/html/functions_n.html152
-rw-r--r--doc/ref/c++/html/functions_o.html157
-rw-r--r--doc/ref/c++/html/functions_p.html160
-rw-r--r--doc/ref/c++/html/functions_r.html221
-rw-r--r--doc/ref/c++/html/functions_rela.html280
-rw-r--r--doc/ref/c++/html/functions_s.html298
-rw-r--r--doc/ref/c++/html/functions_t.html151
-rw-r--r--doc/ref/c++/html/functions_u.html143
-rw-r--r--doc/ref/c++/html/functions_vars.html162
-rw-r--r--doc/ref/c++/html/functions_w.html171
-rw-r--r--doc/ref/c++/html/functions_~.html236
-rw-r--r--doc/ref/c++/html/generic__stub_8h.html126
-rw-r--r--doc/ref/c++/html/generic__stub_8h_source.html175
-rw-r--r--doc/ref/c++/html/globals.html124
-rw-r--r--doc/ref/c++/html/globals_defs.html124
-rw-r--r--doc/ref/c++/html/graph_legend.html154
-rw-r--r--doc/ref/c++/html/graph_legend.md51
-rw-r--r--doc/ref/c++/html/graph_legend.pngbin0 -> 19871 bytes
-rw-r--r--doc/ref/c++/html/grpc__library_8h.html117
-rw-r--r--doc/ref/c++/html/grpc__library_8h_source.html153
-rw-r--r--doc/ref/c++/html/hierarchy.html336
-rw-r--r--doc/ref/c++/html/index.html90
-rw-r--r--doc/ref/c++/html/internal__stub_8h.html118
-rw-r--r--doc/ref/c++/html/internal__stub_8h_source.html163
-rw-r--r--doc/ref/c++/html/jquery.js31
-rw-r--r--doc/ref/c++/html/namespacegrpc.html992
-rw-r--r--doc/ref/c++/html/namespacegrpc_1_1_call_op_generic_recv_message_helper.html110
-rw-r--r--doc/ref/c++/html/namespacegrpc_1_1protobuf.html141
-rw-r--r--doc/ref/c++/html/namespacegrpc_1_1protobuf_1_1io.html152
-rw-r--r--doc/ref/c++/html/namespacegrpc_1_1testing.html100
-rw-r--r--doc/ref/c++/html/namespacemembers.html335
-rw-r--r--doc/ref/c++/html/namespacemembers_enum.html106
-rw-r--r--doc/ref/c++/html/namespacemembers_eval.html157
-rw-r--r--doc/ref/c++/html/namespacemembers_func.html169
-rw-r--r--doc/ref/c++/html/namespacemembers_type.html130
-rw-r--r--doc/ref/c++/html/namespaces.html105
-rw-r--r--doc/ref/c++/html/nav_f.pngbin0 -> 153 bytes
-rw-r--r--doc/ref/c++/html/nav_g.pngbin0 -> 95 bytes
-rw-r--r--doc/ref/c++/html/nav_h.pngbin0 -> 98 bytes
-rw-r--r--doc/ref/c++/html/open.pngbin0 -> 123 bytes
-rw-r--r--doc/ref/c++/html/proto__utils_8h.html129
-rw-r--r--doc/ref/c++/html/proto__utils_8h_source.html186
-rw-r--r--doc/ref/c++/html/rpc__method_8h.html116
-rw-r--r--doc/ref/c++/html/rpc__method_8h_source.html173
-rw-r--r--doc/ref/c++/html/rpc__service__method_8h.html138
-rw-r--r--doc/ref/c++/html/rpc__service__method_8h_source.html386
-rw-r--r--doc/ref/c++/html/search/all_0.html26
-rw-r--r--doc/ref/c++/html/search/all_0.js20
-rw-r--r--doc/ref/c++/html/search/all_1.html26
-rw-r--r--doc/ref/c++/html/search/all_1.js34
-rw-r--r--doc/ref/c++/html/search/all_10.html26
-rw-r--r--doc/ref/c++/html/search/all_10.js33
-rw-r--r--doc/ref/c++/html/search/all_11.html26
-rw-r--r--doc/ref/c++/html/search/all_11.js94
-rw-r--r--doc/ref/c++/html/search/all_12.html26
-rw-r--r--doc/ref/c++/html/search/all_12.js21
-rw-r--r--doc/ref/c++/html/search/all_13.html26
-rw-r--r--doc/ref/c++/html/search/all_13.js11
-rw-r--r--doc/ref/c++/html/search/all_14.html26
-rw-r--r--doc/ref/c++/html/search/all_14.js10
-rw-r--r--doc/ref/c++/html/search/all_15.html26
-rw-r--r--doc/ref/c++/html/search/all_15.js5
-rw-r--r--doc/ref/c++/html/search/all_16.html26
-rw-r--r--doc/ref/c++/html/search/all_16.js37
-rw-r--r--doc/ref/c++/html/search/all_2.html26
-rw-r--r--doc/ref/c++/html/search/all_2.js12
-rw-r--r--doc/ref/c++/html/search/all_3.html26
-rw-r--r--doc/ref/c++/html/search/all_3.js114
-rw-r--r--doc/ref/c++/html/search/all_4.html26
-rw-r--r--doc/ref/c++/html/search/all_4.js16
-rw-r--r--doc/ref/c++/html/search/all_5.html26
-rw-r--r--doc/ref/c++/html/search/all_5.js6
-rw-r--r--doc/ref/c++/html/search/all_6.html26
-rw-r--r--doc/ref/c++/html/search/all_6.js17
-rw-r--r--doc/ref/c++/html/search/all_7.html26
-rw-r--r--doc/ref/c++/html/search/all_7.js36
-rw-r--r--doc/ref/c++/html/search/all_8.html26
-rw-r--r--doc/ref/c++/html/search/all_8.js7
-rw-r--r--doc/ref/c++/html/search/all_9.html26
-rw-r--r--doc/ref/c++/html/search/all_9.js15
-rw-r--r--doc/ref/c++/html/search/all_a.html26
-rw-r--r--doc/ref/c++/html/search/all_a.js4
-rw-r--r--doc/ref/c++/html/search/all_b.html26
-rw-r--r--doc/ref/c++/html/search/all_b.js8
-rw-r--r--doc/ref/c++/html/search/all_c.html26
-rw-r--r--doc/ref/c++/html/search/all_c.js11
-rw-r--r--doc/ref/c++/html/search/all_d.html26
-rw-r--r--doc/ref/c++/html/search/all_d.js10
-rw-r--r--doc/ref/c++/html/search/all_e.html26
-rw-r--r--doc/ref/c++/html/search/all_e.js10
-rw-r--r--doc/ref/c++/html/search/all_f.html26
-rw-r--r--doc/ref/c++/html/search/all_f.js14
-rw-r--r--doc/ref/c++/html/search/classes_0.html26
-rw-r--r--doc/ref/c++/html/search/classes_0.js9
-rw-r--r--doc/ref/c++/html/search/classes_1.html26
-rw-r--r--doc/ref/c++/html/search/classes_1.js5
-rw-r--r--doc/ref/c++/html/search/classes_2.html26
-rw-r--r--doc/ref/c++/html/search/classes_2.js60
-rw-r--r--doc/ref/c++/html/search/classes_3.html26
-rw-r--r--doc/ref/c++/html/search/classes_3.js6
-rw-r--r--doc/ref/c++/html/search/classes_4.html26
-rw-r--r--doc/ref/c++/html/search/classes_4.js4
-rw-r--r--doc/ref/c++/html/search/classes_5.html26
-rw-r--r--doc/ref/c++/html/search/classes_5.js6
-rw-r--r--doc/ref/c++/html/search/classes_6.html26
-rw-r--r--doc/ref/c++/html/search/classes_6.js4
-rw-r--r--doc/ref/c++/html/search/classes_7.html26
-rw-r--r--doc/ref/c++/html/search/classes_7.js4
-rw-r--r--doc/ref/c++/html/search/classes_8.html26
-rw-r--r--doc/ref/c++/html/search/classes_8.js4
-rw-r--r--doc/ref/c++/html/search/classes_9.html26
-rw-r--r--doc/ref/c++/html/search/classes_9.js5
-rw-r--r--doc/ref/c++/html/search/classes_a.html26
-rw-r--r--doc/ref/c++/html/search/classes_a.js4
-rw-r--r--doc/ref/c++/html/search/classes_b.html26
-rw-r--r--doc/ref/c++/html/search/classes_b.js8
-rw-r--r--doc/ref/c++/html/search/classes_c.html26
-rw-r--r--doc/ref/c++/html/search/classes_c.js27
-rw-r--r--doc/ref/c++/html/search/classes_d.html26
-rw-r--r--doc/ref/c++/html/search/classes_d.js8
-rw-r--r--doc/ref/c++/html/search/classes_e.html26
-rw-r--r--doc/ref/c++/html/search/classes_e.js4
-rw-r--r--doc/ref/c++/html/search/classes_f.html26
-rw-r--r--doc/ref/c++/html/search/classes_f.js5
-rw-r--r--doc/ref/c++/html/search/close.pngbin0 -> 273 bytes
-rw-r--r--doc/ref/c++/html/search/defines_0.html26
-rw-r--r--doc/ref/c++/html/search/defines_0.js11
-rw-r--r--doc/ref/c++/html/search/enums_0.html26
-rw-r--r--doc/ref/c++/html/search/enums_0.js4
-rw-r--r--doc/ref/c++/html/search/enums_1.html26
-rw-r--r--doc/ref/c++/html/search/enums_1.js4
-rw-r--r--doc/ref/c++/html/search/enums_2.html26
-rw-r--r--doc/ref/c++/html/search/enums_2.js4
-rw-r--r--doc/ref/c++/html/search/enums_3.html26
-rw-r--r--doc/ref/c++/html/search/enums_3.js5
-rw-r--r--doc/ref/c++/html/search/enumvalues_0.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_0.js6
-rw-r--r--doc/ref/c++/html/search/enumvalues_1.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_1.js4
-rw-r--r--doc/ref/c++/html/search/enumvalues_2.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_2.js5
-rw-r--r--doc/ref/c++/html/search/enumvalues_3.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_3.js6
-rw-r--r--doc/ref/c++/html/search/enumvalues_4.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_4.js4
-rw-r--r--doc/ref/c++/html/search/enumvalues_5.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_5.js4
-rw-r--r--doc/ref/c++/html/search/enumvalues_6.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_6.js5
-rw-r--r--doc/ref/c++/html/search/enumvalues_7.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_7.js5
-rw-r--r--doc/ref/c++/html/search/enumvalues_8.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_8.js5
-rw-r--r--doc/ref/c++/html/search/enumvalues_9.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_9.js4
-rw-r--r--doc/ref/c++/html/search/enumvalues_a.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_a.js4
-rw-r--r--doc/ref/c++/html/search/enumvalues_b.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_b.js6
-rw-r--r--doc/ref/c++/html/search/enumvalues_c.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_c.js4
-rw-r--r--doc/ref/c++/html/search/enumvalues_d.html26
-rw-r--r--doc/ref/c++/html/search/enumvalues_d.js7
-rw-r--r--doc/ref/c++/html/search/files_0.html26
-rw-r--r--doc/ref/c++/html/search/files_0.js7
-rw-r--r--doc/ref/c++/html/search/files_1.html26
-rw-r--r--doc/ref/c++/html/search/files_1.js4
-rw-r--r--doc/ref/c++/html/search/files_2.html26
-rw-r--r--doc/ref/c++/html/search/files_2.js13
-rw-r--r--doc/ref/c++/html/search/files_3.html26
-rw-r--r--doc/ref/c++/html/search/files_3.js4
-rw-r--r--doc/ref/c++/html/search/files_4.html26
-rw-r--r--doc/ref/c++/html/search/files_4.js4
-rw-r--r--doc/ref/c++/html/search/files_5.html26
-rw-r--r--doc/ref/c++/html/search/files_5.js5
-rw-r--r--doc/ref/c++/html/search/files_6.html26
-rw-r--r--doc/ref/c++/html/search/files_6.js4
-rw-r--r--doc/ref/c++/html/search/files_7.html26
-rw-r--r--doc/ref/c++/html/search/files_7.js4
-rw-r--r--doc/ref/c++/html/search/files_8.html26
-rw-r--r--doc/ref/c++/html/search/files_8.js5
-rw-r--r--doc/ref/c++/html/search/files_9.html26
-rw-r--r--doc/ref/c++/html/search/files_9.js16
-rw-r--r--doc/ref/c++/html/search/files_a.html26
-rw-r--r--doc/ref/c++/html/search/files_a.js8
-rw-r--r--doc/ref/c++/html/search/functions_0.html26
-rw-r--r--doc/ref/c++/html/search/functions_0.js19
-rw-r--r--doc/ref/c++/html/search/functions_1.html26
-rw-r--r--doc/ref/c++/html/search/functions_1.js8
-rw-r--r--doc/ref/c++/html/search/functions_10.html26
-rw-r--r--doc/ref/c++/html/search/functions_10.js46
-rw-r--r--doc/ref/c++/html/search/functions_11.html26
-rw-r--r--doc/ref/c++/html/search/functions_11.js9
-rw-r--r--doc/ref/c++/html/search/functions_12.html26
-rw-r--r--doc/ref/c++/html/search/functions_12.js6
-rw-r--r--doc/ref/c++/html/search/functions_13.html26
-rw-r--r--doc/ref/c++/html/search/functions_13.js8
-rw-r--r--doc/ref/c++/html/search/functions_14.html26
-rw-r--r--doc/ref/c++/html/search/functions_14.js37
-rw-r--r--doc/ref/c++/html/search/functions_2.html26
-rw-r--r--doc/ref/c++/html/search/functions_2.js43
-rw-r--r--doc/ref/c++/html/search/functions_3.html26
-rw-r--r--doc/ref/c++/html/search/functions_3.js9
-rw-r--r--doc/ref/c++/html/search/functions_4.html26
-rw-r--r--doc/ref/c++/html/search/functions_4.js6
-rw-r--r--doc/ref/c++/html/search/functions_5.html26
-rw-r--r--doc/ref/c++/html/search/functions_5.js13
-rw-r--r--doc/ref/c++/html/search/functions_6.html26
-rw-r--r--doc/ref/c++/html/search/functions_6.js14
-rw-r--r--doc/ref/c++/html/search/functions_7.html26
-rw-r--r--doc/ref/c++/html/search/functions_7.js6
-rw-r--r--doc/ref/c++/html/search/functions_8.html26
-rw-r--r--doc/ref/c++/html/search/functions_8.js8
-rw-r--r--doc/ref/c++/html/search/functions_9.html26
-rw-r--r--doc/ref/c++/html/search/functions_9.js4
-rw-r--r--doc/ref/c++/html/search/functions_a.html26
-rw-r--r--doc/ref/c++/html/search/functions_a.js7
-rw-r--r--doc/ref/c++/html/search/functions_b.html26
-rw-r--r--doc/ref/c++/html/search/functions_b.js7
-rw-r--r--doc/ref/c++/html/search/functions_c.html26
-rw-r--r--doc/ref/c++/html/search/functions_c.js7
-rw-r--r--doc/ref/c++/html/search/functions_d.html26
-rw-r--r--doc/ref/c++/html/search/functions_d.js9
-rw-r--r--doc/ref/c++/html/search/functions_e.html26
-rw-r--r--doc/ref/c++/html/search/functions_e.js6
-rw-r--r--doc/ref/c++/html/search/functions_f.html26
-rw-r--r--doc/ref/c++/html/search/functions_f.js23
-rw-r--r--doc/ref/c++/html/search/mag_sel.pngbin0 -> 563 bytes
-rw-r--r--doc/ref/c++/html/search/namespaces_0.html26
-rw-r--r--doc/ref/c++/html/search/namespaces_0.js8
-rw-r--r--doc/ref/c++/html/search/nomatches.html12
-rw-r--r--doc/ref/c++/html/search/related_0.html26
-rw-r--r--doc/ref/c++/html/search/related_0.js20
-rw-r--r--doc/ref/c++/html/search/related_1.html26
-rw-r--r--doc/ref/c++/html/search/related_1.js5
-rw-r--r--doc/ref/c++/html/search/related_2.html26
-rw-r--r--doc/ref/c++/html/search/related_2.js6
-rw-r--r--doc/ref/c++/html/search/related_3.html26
-rw-r--r--doc/ref/c++/html/search/related_3.js10
-rw-r--r--doc/ref/c++/html/search/related_4.html26
-rw-r--r--doc/ref/c++/html/search/related_4.js4
-rw-r--r--doc/ref/c++/html/search/related_5.html26
-rw-r--r--doc/ref/c++/html/search/related_5.js4
-rw-r--r--doc/ref/c++/html/search/related_6.html26
-rw-r--r--doc/ref/c++/html/search/related_6.js9
-rw-r--r--doc/ref/c++/html/search/related_7.html26
-rw-r--r--doc/ref/c++/html/search/related_7.js4
-rw-r--r--doc/ref/c++/html/search/search.css271
-rw-r--r--doc/ref/c++/html/search/search.js813
-rw-r--r--doc/ref/c++/html/search/search_l.pngbin0 -> 604 bytes
-rw-r--r--doc/ref/c++/html/search/search_m.pngbin0 -> 158 bytes
-rw-r--r--doc/ref/c++/html/search/search_r.pngbin0 -> 612 bytes
-rw-r--r--doc/ref/c++/html/search/typedefs_0.html26
-rw-r--r--doc/ref/c++/html/search/typedefs_0.js4
-rw-r--r--doc/ref/c++/html/search/typedefs_1.html26
-rw-r--r--doc/ref/c++/html/search/typedefs_1.js4
-rw-r--r--doc/ref/c++/html/search/typedefs_2.html26
-rw-r--r--doc/ref/c++/html/search/typedefs_2.js5
-rw-r--r--doc/ref/c++/html/search/typedefs_3.html26
-rw-r--r--doc/ref/c++/html/search/typedefs_3.js4
-rw-r--r--doc/ref/c++/html/search/typedefs_4.html26
-rw-r--r--doc/ref/c++/html/search/typedefs_4.js4
-rw-r--r--doc/ref/c++/html/search/typedefs_5.html26
-rw-r--r--doc/ref/c++/html/search/typedefs_5.js4
-rw-r--r--doc/ref/c++/html/search/typedefs_6.html26
-rw-r--r--doc/ref/c++/html/search/typedefs_6.js5
-rw-r--r--doc/ref/c++/html/search/variables_0.html26
-rw-r--r--doc/ref/c++/html/search/variables_0.js6
-rw-r--r--doc/ref/c++/html/search/variables_1.html26
-rw-r--r--doc/ref/c++/html/search/variables_1.js4
-rw-r--r--doc/ref/c++/html/search/variables_2.html26
-rw-r--r--doc/ref/c++/html/search/variables_2.js4
-rw-r--r--doc/ref/c++/html/search/variables_3.html26
-rw-r--r--doc/ref/c++/html/search/variables_3.js5
-rw-r--r--doc/ref/c++/html/search/variables_4.html26
-rw-r--r--doc/ref/c++/html/search/variables_4.js5
-rw-r--r--doc/ref/c++/html/search/variables_5.html26
-rw-r--r--doc/ref/c++/html/search/variables_5.js4
-rw-r--r--doc/ref/c++/html/search/variables_6.html26
-rw-r--r--doc/ref/c++/html/search/variables_6.js8
-rw-r--r--doc/ref/c++/html/search/variables_7.html26
-rw-r--r--doc/ref/c++/html/search/variables_7.js4
-rw-r--r--doc/ref/c++/html/search/variables_8.html26
-rw-r--r--doc/ref/c++/html/search/variables_8.js5
-rw-r--r--doc/ref/c++/html/serialization__traits_8h.html117
-rw-r--r--doc/ref/c++/html/serialization__traits_8h_source.html148
-rw-r--r--doc/ref/c++/html/server_8h.html124
-rw-r--r--doc/ref/c++/html/server_8h_source.html373
-rw-r--r--doc/ref/c++/html/server__builder_8h.html119
-rw-r--r--doc/ref/c++/html/server__builder_8h_source.html256
-rw-r--r--doc/ref/c++/html/server__context_8h.html147
-rw-r--r--doc/ref/c++/html/server__context_8h_source.html319
-rw-r--r--doc/ref/c++/html/server__credentials_8h.html133
-rw-r--r--doc/ref/c++/html/server__credentials_8h_source.html194
-rw-r--r--doc/ref/c++/html/service__type_8h.html124
-rw-r--r--doc/ref/c++/html/service__type_8h_source.html247
-rw-r--r--doc/ref/c++/html/slice_8h.html118
-rw-r--r--doc/ref/c++/html/slice_8h_source.html188
-rw-r--r--doc/ref/c++/html/status_8h.html118
-rw-r--r--doc/ref/c++/html/status_8h_source.html177
-rw-r--r--doc/ref/c++/html/status__code__enum_8h.html140
-rw-r--r--doc/ref/c++/html/status__code__enum_8h_source.html278
-rw-r--r--doc/ref/c++/html/stream_8h.html170
-rw-r--r--doc/ref/c++/html/stream_8h_source.html994
-rw-r--r--doc/ref/c++/html/structgrpc_1_1_method_handler_1_1_handler_parameter.html223
-rw-r--r--doc/ref/c++/html/structgrpc_1_1_ssl_credentials_options.html156
-rw-r--r--doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options.html192
-rw-r--r--doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html142
-rw-r--r--doc/ref/c++/html/sync_8h.html104
-rw-r--r--doc/ref/c++/html/sync_8h_source.html148
-rw-r--r--doc/ref/c++/html/sync__cxx11_8h.html112
-rw-r--r--doc/ref/c++/html/sync__cxx11_8h_source.html149
-rw-r--r--doc/ref/c++/html/sync__no__cxx11_8h.html125
-rw-r--r--doc/ref/c++/html/sync__no__cxx11_8h_source.html219
-rw-r--r--doc/ref/c++/html/sync_off.pngbin0 -> 853 bytes
-rw-r--r--doc/ref/c++/html/sync_on.pngbin0 -> 845 bytes
-rw-r--r--doc/ref/c++/html/tab_a.pngbin0 -> 142 bytes
-rw-r--r--doc/ref/c++/html/tab_b.pngbin0 -> 169 bytes
-rw-r--r--doc/ref/c++/html/tab_h.pngbin0 -> 177 bytes
-rw-r--r--doc/ref/c++/html/tab_s.pngbin0 -> 184 bytes
-rw-r--r--doc/ref/c++/html/tabs.css60
-rw-r--r--doc/ref/c++/html/thd_8h.html104
-rw-r--r--doc/ref/c++/html/thd_8h_source.html148
-rw-r--r--doc/ref/c++/html/thd__cxx11_8h.html111
-rw-r--r--doc/ref/c++/html/thd__cxx11_8h_source.html145
-rw-r--r--doc/ref/c++/html/thd__no__cxx11_8h.html117
-rw-r--r--doc/ref/c++/html/thd__no__cxx11_8h_source.html197
-rw-r--r--doc/ref/c++/html/thread__pool__interface_8h.html123
-rw-r--r--doc/ref/c++/html/thread__pool__interface_8h_source.html158
-rw-r--r--doc/ref/c++/html/time_8h.html133
-rw-r--r--doc/ref/c++/html/time_8h_source.html221
519 files changed, 57625 insertions, 0 deletions
diff --git a/doc/ref/c++/html/annotated.html b/doc/ref/c++/html/annotated.html
new file mode 100644
index 0000000000..96de425ef4
--- /dev/null
+++ b/doc/ref/c++/html/annotated.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Structures</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Data Structures</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img id="arr_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('0_')"/><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc.html" target="_self">grpc</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_')"/><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html" target="_self">CallOpGenericRecvMessageHelper</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html" target="_self">DeserializeFunc</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html" target="_self">DeserializeFuncType</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_1_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_1_')"/><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1protobuf.html" target="_self">protobuf</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html" target="_self">io</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1testing.html" target="_self">testing</a></td><td class="desc"></td></tr>
+<tr id="row_0_3_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_generic_server_context.html" target="_self">GenericServerContext</a></td><td class="desc"></td></tr>
+<tr id="row_0_4_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_async_generic_service.html" target="_self">AsyncGenericService</a></td><td class="desc"></td></tr>
+<tr id="row_0_5_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html" target="_self">ClientAsyncResponseReaderInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_6_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_response_reader.html" target="_self">ClientAsyncResponseReader</a></td><td class="desc"></td></tr>
+<tr id="row_0_7_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_response_writer.html" target="_self">ServerAsyncResponseWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_8_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_auth_context.html" target="_self">AuthContext</a></td><td class="desc"></td></tr>
+<tr id="row_0_9_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_auth_property_iterator.html" target="_self">AuthPropertyIterator</a></td><td class="desc"></td></tr>
+<tr id="row_0_10_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_byte_buffer.html" target="_self">ByteBuffer</a></td><td class="desc"></td></tr>
+<tr id="row_0_11_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html" target="_self">SerializationTraits&lt; ByteBuffer, void &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_12_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_channel_arguments.html" target="_self">ChannelArguments</a></td><td class="desc"></td></tr>
+<tr id="row_0_13_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_channel_interface.html" target="_self">ChannelInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_14_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader.html" target="_self">ClientReader</a></td><td class="desc"></td></tr>
+<tr id="row_0_15_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_writer.html" target="_self">ClientWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_16_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_writer.html" target="_self">ClientReaderWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_17_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader.html" target="_self">ClientAsyncReader</a></td><td class="desc"></td></tr>
+<tr id="row_0_18_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_writer.html" target="_self">ClientAsyncWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_19_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_writer.html" target="_self">ClientAsyncReaderWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_20_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_context.html" target="_self">ClientContext</a></td><td class="desc"></td></tr>
+<tr id="row_0_21_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_reader.html" target="_self">ServerReader</a></td><td class="desc"></td></tr>
+<tr id="row_0_22_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_writer.html" target="_self">ServerWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_23_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_reader_writer.html" target="_self">ServerReaderWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_24_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_method_handler.html" target="_self">RpcMethodHandler</a></td><td class="desc"></td></tr>
+<tr id="row_0_25_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_streaming_handler.html" target="_self">ClientStreamingHandler</a></td><td class="desc"></td></tr>
+<tr id="row_0_26_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_streaming_handler.html" target="_self">ServerStreamingHandler</a></td><td class="desc"></td></tr>
+<tr id="row_0_27_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html" target="_self">BidiStreamingHandler</a></td><td class="desc"></td></tr>
+<tr id="row_0_28_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_completion_queue_tag.html" target="_self">CompletionQueueTag</a></td><td class="desc"></td></tr>
+<tr id="row_0_29_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_completion_queue.html" target="_self">CompletionQueue</a></td><td class="desc"></td></tr>
+<tr id="row_0_30_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_completion_queue.html" target="_self">ServerCompletionQueue</a></td><td class="desc"></td></tr>
+<tr id="row_0_31_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_credentials.html" target="_self">Credentials</a></td><td class="desc"></td></tr>
+<tr id="row_0_32_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_ssl_credentials_options.html" target="_self">SslCredentialsOptions</a></td><td class="desc"></td></tr>
+<tr id="row_0_33_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html" target="_self">DynamicThreadPool</a></td><td class="desc"></td></tr>
+<tr id="row_0_34_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html" target="_self">FixedSizeThreadPool</a></td><td class="desc"></td></tr>
+<tr id="row_0_35_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_generic_stub.html" target="_self">GenericStub</a></td><td class="desc"></td></tr>
+<tr id="row_0_36_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_write_options.html" target="_self">WriteOptions</a></td><td class="desc">Per-message write options </td></tr>
+<tr id="row_0_37_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_no_op.html" target="_self">CallNoOp</a></td><td class="desc">Default argument for <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> </td></tr>
+<tr id="row_0_38_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html" target="_self">CallOpSendInitialMetadata</a></td><td class="desc"></td></tr>
+<tr id="row_0_39_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_send_message.html" target="_self">CallOpSendMessage</a></td><td class="desc"></td></tr>
+<tr id="row_0_40_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_recv_message.html" target="_self">CallOpRecvMessage</a></td><td class="desc"></td></tr>
+<tr id="row_0_41_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html" target="_self">CallOpGenericRecvMessage</a></td><td class="desc"></td></tr>
+<tr id="row_0_42_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_client_send_close.html" target="_self">CallOpClientSendClose</a></td><td class="desc"></td></tr>
+<tr id="row_0_43_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_server_send_status.html" target="_self">CallOpServerSendStatus</a></td><td class="desc"></td></tr>
+<tr id="row_0_44_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html" target="_self">CallOpRecvInitialMetadata</a></td><td class="desc"></td></tr>
+<tr id="row_0_45_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html" target="_self">CallOpClientRecvStatus</a></td><td class="desc"></td></tr>
+<tr id="row_0_46_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set_interface.html" target="_self">CallOpSetInterface</a></td><td class="desc">An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the lower layers, and as it is-a <a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>, also massages the final completion into the correct form for consumption in the C++ API </td></tr>
+<tr id="row_0_47_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">CallOpSet</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+<tr id="row_0_48_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html" target="_self">SneakyCallOpSet</a></td><td class="desc">A <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> that does not post completions to the completion queue </td></tr>
+<tr id="row_0_49_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_hook.html" target="_self">CallHook</a></td><td class="desc"></td></tr>
+<tr id="row_0_50_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call.html" target="_self">Call</a></td><td class="desc"></td></tr>
+<tr id="row_0_51_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_grpc_library.html" target="_self">GrpcLibrary</a></td><td class="desc"></td></tr>
+<tr id="row_0_52_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_internal_stub.html" target="_self">InternalStub</a></td><td class="desc"></td></tr>
+<tr id="row_0_53_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html" target="_self">SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_54_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_method.html" target="_self">RpcMethod</a></td><td class="desc"></td></tr>
+<tr id="row_0_55_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_55_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_55_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_method_handler.html" target="_self">MethodHandler</a></td><td class="desc"></td></tr>
+<tr id="row_0_55_0_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html" target="_self">HandlerParameter</a></td><td class="desc"></td></tr>
+<tr id="row_0_56_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_service_method.html" target="_self">RpcServiceMethod</a></td><td class="desc"></td></tr>
+<tr id="row_0_57_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_service.html" target="_self">RpcService</a></td><td class="desc"></td></tr>
+<tr id="row_0_58_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_serialization_traits.html" target="_self">SerializationTraits</a></td><td class="desc">Defines how to serialize and deserialize some type </td></tr>
+<tr id="row_0_59_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_synchronous_service.html" target="_self">SynchronousService</a></td><td class="desc"></td></tr>
+<tr id="row_0_60_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html" target="_self">ServerAsyncStreamingInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_61_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_asynchronous_service.html" target="_self">AsynchronousService</a></td><td class="desc"></td></tr>
+<tr id="row_0_62_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1lock__guard.html" target="_self">lock_guard</a></td><td class="desc"></td></tr>
+<tr id="row_0_63_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1mutex.html" target="_self">mutex</a></td><td class="desc"></td></tr>
+<tr id="row_0_64_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1unique__lock.html" target="_self">unique_lock</a></td><td class="desc"></td></tr>
+<tr id="row_0_65_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1condition__variable.html" target="_self">condition_variable</a></td><td class="desc"></td></tr>
+<tr id="row_0_66_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1thread.html" target="_self">thread</a></td><td class="desc"></td></tr>
+<tr id="row_0_67_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server.html" target="_self">Server</a></td><td class="desc"></td></tr>
+<tr id="row_0_68_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_builder.html" target="_self">ServerBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_0_69_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_reader.html" target="_self">ServerAsyncReader</a></td><td class="desc"></td></tr>
+<tr id="row_0_70_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_writer.html" target="_self">ServerAsyncWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_71_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_reader_writer.html" target="_self">ServerAsyncReaderWriter</a></td><td class="desc"></td></tr>
+<tr id="row_0_72_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_context.html" target="_self">ServerContext</a></td><td class="desc"></td></tr>
+<tr id="row_0_73_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_credentials.html" target="_self">ServerCredentials</a></td><td class="desc"></td></tr>
+<tr id="row_0_74_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_74_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_74_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html" target="_self">SslServerCredentialsOptions</a></td><td class="desc"></td></tr>
+<tr id="row_0_74_0_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html" target="_self">PemKeyCertPair</a></td><td class="desc"></td></tr>
+<tr id="row_0_75_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_slice.html" target="_self">Slice</a></td><td class="desc"></td></tr>
+<tr id="row_0_76_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_status.html" target="_self">Status</a></td><td class="desc"></td></tr>
+<tr id="row_0_77_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_streaming_interface.html" target="_self">ClientStreamingInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_78_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_reader_interface.html" target="_self">ReaderInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_79_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_writer_interface.html" target="_self">WriterInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_80_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_interface.html" target="_self">ClientReaderInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_81_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_writer_interface.html" target="_self">ClientWriterInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_82_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html" target="_self">ClientReaderWriterInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_83_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html" target="_self">ClientAsyncStreamingInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_84_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_async_reader_interface.html" target="_self">AsyncReaderInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_85_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_async_writer_interface.html" target="_self">AsyncWriterInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_86_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_interface.html" target="_self">ClientAsyncReaderInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_87_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_writer_interface.html" target="_self">ClientAsyncWriterInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_88_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html" target="_self">ClientAsyncReaderWriterInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_89_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_thread_pool_interface.html" target="_self">ThreadPoolInterface</a></td><td class="desc"></td></tr>
+<tr id="row_0_90_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_time_point.html" target="_self">TimePoint</a></td><td class="desc"></td></tr>
+<tr id="row_0_91_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html" target="_self">TimePoint&lt; gpr_timespec &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_0_92_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html" target="_self">TimePoint&lt; std::chrono::system_clock::time_point &gt;</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/async__generic__service_8h.html b/doc/ref/c++/html/async__generic__service_8h.html
new file mode 100644
index 0000000000..c7c3307178
--- /dev/null
+++ b/doc/ref/c++/html/async__generic__service_8h.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/async_generic_service.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">async_generic_service.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc++/byte_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="stream_8h_source.html">grpc++/stream.h</a>&gt;</code><br/>
+</div>
+<p><a href="async__generic__service_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_server_context.html">grpc::GenericServerContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_generic_service.html">grpc::AsyncGenericService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7b3db9e9e4d0c7faf701c9ebd455196a"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+ServerAsyncReaderWriter<br class="typebreak"/>
+&lt; ByteBuffer, ByteBuffer &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">grpc::GenericServerAsyncReaderWriter</a></td></tr>
+<tr class="separator:a7b3db9e9e4d0c7faf701c9ebd455196a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/async__generic__service_8h_source.html b/doc/ref/c++/html/async__generic__service_8h_source.html
new file mode 100644
index 0000000000..dcc16307ff
--- /dev/null
+++ b/doc/ref/c++/html/async__generic__service_8h_source.html
@@ -0,0 +1,194 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/async_generic_service.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">async_generic_service.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="async__generic__service_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_ASYNC_GENERIC_SERVICE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_ASYNC_GENERIC_SERVICE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="byte__buffer_8h.html">grpc++/byte_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="stream_8h.html">grpc++/stream.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">struct </span>grpc_server;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="namespacegrpc.html"> 42</a></span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter&lt;ByteBuffer, ByteBuffer&gt;</a></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a"> 45</a></span>&#160; <a class="code" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">GenericServerAsyncReaderWriter</a>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classgrpc_1_1_generic_server_context.html"> 47</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a> {</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37"> 49</a></span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; <a class="code" href="classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37">method</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> method_; }</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc"> 50</a></span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; <a class="code" href="classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc">host</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> host_; }</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1_generic_server_context.html#ac2055578ac48afabe5af487878450f68"> 53</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server.html">Server</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> method_;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> host_;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;};</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classgrpc_1_1_async_generic_service.html"> 59</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">// TODO(yangg) Once we can add multiple completion queues to the server</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="comment">// in c core, add a CompletionQueue* argument to the ctor here.</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="comment">// TODO(yangg) support methods list.</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae"> 64</a></span>&#160; <a class="code" href="classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae">AsyncGenericService</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; methods) : server_(nullptr) {}</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_async_generic_service.html#aeab5c20e89a754d5add4bdaad01a3ef6">RequestCall</a>(<a class="code" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a>* ctx,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="classgrpc_1_1_server_async_reader_writer.html">GenericServerAsyncReaderWriter</a>* reader_writer,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* call_cq,</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>* notification_cq, <span class="keywordtype">void</span>* tag);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classgrpc_1_1_async_generic_service.html#ac2055578ac48afabe5af487878450f68"> 72</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server.html">Server</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="classgrpc_1_1_server.html">Server</a>* server_;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;};</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#endif // GRPCXX_ASYNC_GENERIC_SERVICE_H</span></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="byte__buffer_8h_html"><div class="ttname"><a href="byte__buffer_8h.html">byte_buffer.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a></div><div class="ttdef"><b>Definition:</b> server_context.h:60</div></div>
+<div class="ttc" id="classgrpc_1_1_async_generic_service_html_a60e3bd7ac8673ed0b49b1260a91518ae"><div class="ttname"><a href="classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae">grpc::AsyncGenericService::AsyncGenericService</a></div><div class="ttdeci">AsyncGenericService(const grpc::string &amp;methods)</div><div class="ttdef"><b>Definition:</b> async_generic_service.h:64</div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_async_generic_service_html"><div class="ttname"><a href="classgrpc_1_1_async_generic_service.html">grpc::AsyncGenericService</a></div><div class="ttdef"><b>Definition:</b> async_generic_service.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1_async_generic_service_html_aeab5c20e89a754d5add4bdaad01a3ef6"><div class="ttname"><a href="classgrpc_1_1_async_generic_service.html#aeab5c20e89a754d5add4bdaad01a3ef6">grpc::AsyncGenericService::RequestCall</a></div><div class="ttdeci">void RequestCall(GenericServerContext *ctx, GenericServerAsyncReaderWriter *reader_writer, CompletionQueue *call_cq, ServerCompletionQueue *notification_cq, void *tag)</div></div>
+<div class="ttc" id="stream_8h_html"><div class="ttname"><a href="stream_8h.html">stream.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_html"><div class="ttname"><a href="classgrpc_1_1_server.html">grpc::Server</a></div><div class="ttdef"><b>Definition:</b> server.h:61</div></div>
+<div class="ttc" id="namespacegrpc_html_a7b3db9e9e4d0c7faf701c9ebd455196a"><div class="ttname"><a href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">grpc::GenericServerAsyncReaderWriter</a></div><div class="ttdeci">ServerAsyncReaderWriter&lt; ByteBuffer, ByteBuffer &gt; GenericServerAsyncReaderWriter</div><div class="ttdef"><b>Definition:</b> async_generic_service.h:45</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_generic_server_context_html"><div class="ttname"><a href="classgrpc_1_1_generic_server_context.html">grpc::GenericServerContext</a></div><div class="ttdef"><b>Definition:</b> async_generic_service.h:47</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_server_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_server_completion_queue.html">grpc::ServerCompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:162</div></div>
+<div class="ttc" id="classgrpc_1_1_generic_server_context_html_a2962278c0c6280a2d95f5747ea03babc"><div class="ttname"><a href="classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc">grpc::GenericServerContext::host</a></div><div class="ttdeci">const grpc::string &amp; host() const </div><div class="ttdef"><b>Definition:</b> async_generic_service.h:50</div></div>
+<div class="ttc" id="classgrpc_1_1_generic_server_context_html_ae08880fa4adb490326953ad905715c37"><div class="ttname"><a href="classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37">grpc::GenericServerContext::method</a></div><div class="ttdeci">const grpc::string &amp; method() const </div><div class="ttdef"><b>Definition:</b> async_generic_service.h:49</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/async__unary__call_8h.html b/doc/ref/c++/html/async__unary__call_8h.html
new file mode 100644
index 0000000000..892126e18e
--- /dev/null
+++ b/doc/ref/c++/html/async__unary__call_8h.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/async_unary_call.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">async_unary_call.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="channel__interface_8h_source.html">grpc++/channel_interface.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="client__context_8h_source.html">grpc++/client_context.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="completion__queue_8h_source.html">grpc++/completion_queue.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="server__context_8h_source.html">grpc++/server_context.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="call_8h_source.html">grpc++/impl/call.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="service__type_8h_source.html">grpc++/impl/service_type.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;grpc/support/log.h&gt;</code><br/>
+</div>
+<p><a href="async__unary__call_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/async__unary__call_8h_source.html b/doc/ref/c++/html/async__unary__call_8h_source.html
new file mode 100644
index 0000000000..64795126d9
--- /dev/null
+++ b/doc/ref/c++/html/async__unary__call_8h_source.html
@@ -0,0 +1,293 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/async_unary_call.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">async_unary_call.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="async__unary__call_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_ASYNC_UNARY_CALL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_ASYNC_UNARY_CALL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="channel__interface_8h.html">grpc++/channel_interface.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="client__context_8h.html">grpc++/client_context.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="completion__queue_8h.html">grpc++/completion_queue.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="server__context_8h.html">grpc++/server_context.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="call_8h.html">grpc++/impl/call.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="service__type_8h.html">grpc++/impl/service_type.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;grpc/support/log.h&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_response_reader_interface.html"> 49</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_response_reader_interface.html">ClientAsyncResponseReaderInterface</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0"> 51</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0">~ClientAsyncResponseReaderInterface</a>() {}</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c">ReadInitialMetadata</a>(<span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb">Finish</a>(R* msg, <a class="code" href="classgrpc_1_1_status.html">Status</a>* status, <span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;};</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_response_reader.html"> 57</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_async_response_reader_interface.html">ClientAsyncResponseReaderInterface</a>&lt;R&gt; {</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf"> 61</a></span>&#160; <a class="code" href="classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf">ClientAsyncResponseReader</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method, <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">const</span> W&amp; request)</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; : context_(context), call_(channel-&gt;CreateCall(method, context, cq)) {</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; init_buf_.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// TODO(ctiller): don&#39;t assert</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; GPR_ASSERT(init_buf_.SendMessage(request).ok());</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; init_buf_.ClientSendClose();</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;init_buf_);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b"> 72</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b">ReadInitialMetadata</a>(<span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; GPR_ASSERT(!context_-&gt;initial_metadata_received_);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; meta_buf_.set_output_tag(tag);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; meta_buf_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_buf_);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; }</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830"> 80</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830">Finish</a>(R* msg, <a class="code" href="classgrpc_1_1_status.html">Status</a>* status, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; finish_buf_.set_output_tag(tag);</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; finish_buf_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; }</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; finish_buf_.RecvMessage(msg);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; finish_buf_.ClientRecvStatus(context_, status);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_buf_);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context_;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call_;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="classgrpc_1_1_sneaky_call_op_set.html">SneakyCallOpSet</a>&lt;<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a>, <a class="code" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a>,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classgrpc_1_1_call_op_client_send_close.html">CallOpClientSendClose</a>&gt; init_buf_;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata&gt;</a> meta_buf_;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata, CallOpRecvMessage&lt;R&gt;</a>,</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a>&gt; finish_buf_;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;};</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_response_writer.html"> 101</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_async_response_writer.html">ServerAsyncResponseWriter</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> {</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9"> 104</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9">ServerAsyncResponseWriter</a>(<a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* ctx)</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; : call_(nullptr, nullptr, nullptr), ctx_(ctx) {}</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7"> 107</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7">SendInitialMetadata</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; GPR_ASSERT(!ctx_-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; meta_buf_.set_output_tag(tag);</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; meta_buf_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_buf_);</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; }</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809"> 116</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809">Finish</a>(<span class="keyword">const</span> W&amp; msg, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; status, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; finish_buf_.set_output_tag(tag);</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; finish_buf_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; }</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// The response is dropped if the status is not OK.</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()) {</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; finish_buf_.ServerSendStatus(</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; ctx_-&gt;trailing_metadata_, finish_buf_.SendMessage(msg));</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; finish_buf_.ServerSendStatus(ctx_-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; }</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_buf_);</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; }</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93"> 132</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93">FinishWithError</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; status, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; GPR_ASSERT(!status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>());</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; finish_buf_.set_output_tag(tag);</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; finish_buf_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; finish_buf_.ServerSendStatus(ctx_-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_buf_);</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">void</span> BindCall(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> { call_ = *call; }</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; Call call_;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; ServerContext* ctx_;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata&gt; meta_buf_;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata, CallOpSendMessage,</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; CallOpServerSendStatus&gt; finish_buf_;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;};</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="preprocessor">#endif // GRPCXX_ASYNC_UNARY_CALL_H</span></div>
+<div class="ttc" id="classgrpc_1_1_server_async_response_writer_html_af1e5812c2a8017bf82e84748f201ce93"><div class="ttname"><a href="classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93">grpc::ServerAsyncResponseWriter::FinishWithError</a></div><div class="ttdeci">void FinishWithError(const Status &amp;status, void *tag)</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:132</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_interface_html_aa97dc1ab6a7160a489d2e555102bf5a0"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0">grpc::ClientAsyncResponseReaderInterface::~ClientAsyncResponseReaderInterface</a></div><div class="ttdeci">virtual ~ClientAsyncResponseReaderInterface()</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_interface_html_a379b1d7477431729e01cd48cf6fc78bb"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb">grpc::ClientAsyncResponseReaderInterface::Finish</a></div><div class="ttdeci">virtual void Finish(R *msg, Status *status, void *tag)=0</div></div>
+<div class="ttc" id="completion__queue_8h_html"><div class="ttname"><a href="completion__queue_8h.html">completion_queue.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_response_writer_html_ad1e22d187c82a537ded4504fbdef6809"><div class="ttname"><a href="classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809">grpc::ServerAsyncResponseWriter::Finish</a></div><div class="ttdeci">void Finish(const W &amp;msg, const Status &amp;status, void *tag)</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:116</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html">grpc::CallOpClientRecvStatus</a></div><div class="ttdef"><b>Definition:</b> call.h:431</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_streaming_interface_html"><div class="ttname"><a href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></div><div class="ttdef"><b>Definition:</b> service_type.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_response_writer_html_a76be68485a36629af40560aa1f1de0b7"><div class="ttname"><a href="classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7">grpc::ServerAsyncResponseWriter::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:107</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_html_a585dc15817999f82a72120a783800830"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830">grpc::ClientAsyncResponseReader::Finish</a></div><div class="ttdeci">void Finish(R *msg, Status *status, void *tag)</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:80</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_interface_html_a676e3a03a61c49a82b630d85bbfd366c"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c">grpc::ClientAsyncResponseReaderInterface::ReadInitialMetadata</a></div><div class="ttdeci">virtual void ReadInitialMetadata(void *tag)=0</div></div>
+<div class="ttc" id="channel__interface_8h_html"><div class="ttname"><a href="channel__interface_8h.html">channel_interface.h</a></div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_html"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader</a></div><div class="ttdef"><b>Definition:</b> async_unary_call.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_html_a963aefc43f34c9182e265647bbcdb91b"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b">grpc::ClientAsyncResponseReader::ReadInitialMetadata</a></div><div class="ttdeci">void ReadInitialMetadata(void *tag)</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:72</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html">grpc::CallOpSendMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:190</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html">grpc::CallOpClientSendClose</a></div><div class="ttdef"><b>Definition:</b> call.h:341</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader_interface.html">grpc::ClientAsyncResponseReaderInterface</a></div><div class="ttdef"><b>Definition:</b> async_unary_call.h:49</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></div><div class="ttdef"><b>Definition:</b> channel_interface.h:52</div></div>
+<div class="ttc" id="call_8h_html"><div class="ttname"><a href="call_8h.html">call.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a></div><div class="ttdoc">Primary implementaiton of CallOpSetInterface. </div><div class="ttdef"><b>Definition:</b> call.h:506</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_html_a4868e0f82053062c95fea7bd197acadf"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf">grpc::ClientAsyncResponseReader::ClientAsyncResponseReader</a></div><div class="ttdeci">ClientAsyncResponseReader(ChannelInterface *channel, CompletionQueue *cq, const RpcMethod &amp;method, ClientContext *context, const W &amp;request)</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:61</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_response_writer_html_a3c97a19ba6eaa0b9eef9b6b86dbad9e9"><div class="ttname"><a href="classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9">grpc::ServerAsyncResponseWriter::ServerAsyncResponseWriter</a></div><div class="ttdeci">ServerAsyncResponseWriter(ServerContext *ctx)</div><div class="ttdef"><b>Definition:</b> async_unary_call.h:104</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="client__context_8h_html"><div class="ttname"><a href="client__context_8h.html">client_context.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_a78ca141a1008fbbb122ee4de076edcc4"><div class="ttname"><a href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">grpc::Call::PerformOps</a></div><div class="ttdeci">void PerformOps(CallOpSetInterface *ops)</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a1f5b65c54d4e6dd502897e36040714dc"><div class="ttname"><a href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">grpc::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:55</div></div>
+<div class="ttc" id="service__type_8h_html"><div class="ttname"><a href="service__type_8h.html">service_type.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_response_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter</a></div><div class="ttdef"><b>Definition:</b> async_unary_call.h:101</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html">grpc::CallOpSendInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:159</div></div>
+<div class="ttc" id="classgrpc_1_1_sneaky_call_op_set_html"><div class="ttname"><a href="classgrpc_1_1_sneaky_call_op_set.html">grpc::SneakyCallOpSet</a></div><div class="ttdoc">A CallOpSet that does not post completions to the completion queue. </div><div class="ttdef"><b>Definition:</b> call.h:548</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="server__context_8h_html"><div class="ttname"><a href="server__context_8h.html">server_context.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/auth__context_8h.html b/doc/ref/c++/html/auth__context_8h.html
new file mode 100644
index 0000000000..720da677d9
--- /dev/null
+++ b/doc/ref/c++/html/auth__context_8h.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/auth_context.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">auth_context.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;vector&gt;</code><br/>
+<code>#include &lt;<a class="el" href="auth__property__iterator_8h_source.html">grpc++/auth_property_iterator.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+</div>
+<p><a href="auth__context_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html">grpc::AuthContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/auth__context_8h_source.html b/doc/ref/c++/html/auth__context_8h_source.html
new file mode 100644
index 0000000000..42b6813904
--- /dev/null
+++ b/doc/ref/c++/html/auth__context_8h_source.html
@@ -0,0 +1,176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/auth_context.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">auth_context.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="auth__context_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_AUTH_CONTEXT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_AUTH_CONTEXT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="auth__property__iterator_8h.html">grpc++/auth_property_iterator.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classgrpc_1_1_auth_context.html"> 44</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_auth_context.html">AuthContext</a> {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464"> 46</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464">~AuthContext</a>() {}</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="comment">// A peer identity, in general is one or more properties (in which case they</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="comment">// have the same name).</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">virtual</span> std::vector&lt;grpc::string&gt; <a class="code" href="classgrpc_1_1_auth_context.html#a94f653509ddd988ce8fd4f22746fead9">GetPeerIdentity</a>() <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">virtual</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="classgrpc_1_1_auth_context.html#ad7b2e589590246b953decd05cdaa4465">GetPeerIdentityPropertyName</a>() <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// Returns all the property values with the given name.</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">virtual</span> std::vector&lt;grpc::string&gt; <a class="code" href="classgrpc_1_1_auth_context.html#ad34c79f4934c974aa9e77ca69eed82aa">FindPropertyValues</a>(</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; name) <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">// Iteration over all the properties.</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> <a class="code" href="classgrpc_1_1_auth_context.html#a4a4a9e18e05e1a06cf25b8a77edd8c89">begin</a>() <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> <a class="code" href="classgrpc_1_1_auth_context.html#a81d358b427e0f1096e148918cdeef991">end</a>() <span class="keyword">const</span> = 0;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;};</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif // GRPCXX_AUTH_CONTEXT_H</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"></span></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="auth__property__iterator_8h_html"><div class="ttname"><a href="auth__property__iterator_8h.html">auth_property_iterator.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_auth_context_html"><div class="ttname"><a href="classgrpc_1_1_auth_context.html">grpc::AuthContext</a></div><div class="ttdef"><b>Definition:</b> auth_context.h:44</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_context_html_a94f653509ddd988ce8fd4f22746fead9"><div class="ttname"><a href="classgrpc_1_1_auth_context.html#a94f653509ddd988ce8fd4f22746fead9">grpc::AuthContext::GetPeerIdentity</a></div><div class="ttdeci">virtual std::vector&lt; grpc::string &gt; GetPeerIdentity() const =0</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_auth_context_html_a81d358b427e0f1096e148918cdeef991"><div class="ttname"><a href="classgrpc_1_1_auth_context.html#a81d358b427e0f1096e148918cdeef991">grpc::AuthContext::end</a></div><div class="ttdeci">virtual AuthPropertyIterator end() const =0</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_context_html_ad34c79f4934c974aa9e77ca69eed82aa"><div class="ttname"><a href="classgrpc_1_1_auth_context.html#ad34c79f4934c974aa9e77ca69eed82aa">grpc::AuthContext::FindPropertyValues</a></div><div class="ttdeci">virtual std::vector&lt; grpc::string &gt; FindPropertyValues(const grpc::string &amp;name) const =0</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_context_html_a4a4a9e18e05e1a06cf25b8a77edd8c89"><div class="ttname"><a href="classgrpc_1_1_auth_context.html#a4a4a9e18e05e1a06cf25b8a77edd8c89">grpc::AuthContext::begin</a></div><div class="ttdeci">virtual AuthPropertyIterator begin() const =0</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_context_html_a3784c5f4eeab56a8524da29981548464"><div class="ttname"><a href="classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464">grpc::AuthContext::~AuthContext</a></div><div class="ttdeci">virtual ~AuthContext()</div><div class="ttdef"><b>Definition:</b> auth_context.h:46</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html">grpc::AuthPropertyIterator</a></div><div class="ttdef"><b>Definition:</b> auth_property_iterator.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_context_html_ad7b2e589590246b953decd05cdaa4465"><div class="ttname"><a href="classgrpc_1_1_auth_context.html#ad7b2e589590246b953decd05cdaa4465">grpc::AuthContext::GetPeerIdentityPropertyName</a></div><div class="ttdeci">virtual grpc::string GetPeerIdentityPropertyName() const =0</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/auth__property__iterator_8h.html b/doc/ref/c++/html/auth__property__iterator_8h.html
new file mode 100644
index 0000000000..3e0a9c975c
--- /dev/null
+++ b/doc/ref/c++/html/auth__property__iterator_8h.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/auth_property_iterator.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">auth_property_iterator.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;iterator&gt;</code><br/>
+<code>#include &lt;vector&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+</div>
+<p><a href="auth__property__iterator_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">grpc::AuthPropertyIterator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a8e3a499d0002aae3afd1cae08f44a9ee"><td class="memItemLeft" align="right" valign="top">typedef std::pair<br class="typebreak"/>
+&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">grpc::AuthProperty</a></td></tr>
+<tr class="separator:a8e3a499d0002aae3afd1cae08f44a9ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/auth__property__iterator_8h_source.html b/doc/ref/c++/html/auth__property__iterator_8h_source.html
new file mode 100644
index 0000000000..14e0ce7622
--- /dev/null
+++ b/doc/ref/c++/html/auth__property__iterator_8h_source.html
@@ -0,0 +1,187 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/auth_property_iterator.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">auth_property_iterator.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="auth__property__iterator_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_AUTH_PROPERTY_ITERATOR_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_AUTH_PROPERTY_ITERATOR_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;iterator&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">struct </span>grpc_auth_context;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">struct </span>grpc_auth_property;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">struct </span>grpc_auth_property_iterator;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee"> 47</a></span>&#160;<span class="keyword">class </span>SecureAuthContext;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">typedef</span> std::pair&lt;grpc::string, grpc::string&gt; <a class="code" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">AuthProperty</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classgrpc_1_1_auth_property_iterator.html"> 51</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; : <span class="keyword">public</span> std::iterator&lt;std::input_iterator_tag, const AuthProperty&gt; {</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classgrpc_1_1_auth_property_iterator.html#a91a3a2ce5085a948aac11d7371c13b49">~AuthPropertyIterator</a>();</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a>&amp; <a class="code" href="classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6">operator++</a>();</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> <a class="code" href="classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6">operator++</a>(<span class="keywordtype">int</span>);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_auth_property_iterator.html#ab5ab6a2c9a4df2b02086513716553dee">operator==</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a>&amp; rhs) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_auth_property_iterator.html#af3d2671fe70be36b2ed26a75874f2fc1">operator!=</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a>&amp; rhs) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">AuthProperty</a> <a class="code" href="classgrpc_1_1_auth_property_iterator.html#a564f39b91f4168c6f660bbd3144f1f0e">operator*</a>();</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949">AuthPropertyIterator</a>();</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949">AuthPropertyIterator</a>(<span class="keyword">const</span> grpc_auth_property* property,</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">const</span> grpc_auth_property_iterator* iter);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d"> 66</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d">SecureAuthContext</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">const</span> grpc_auth_property* property_;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// The following items form a grpc_auth_property_iterator.</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> grpc_auth_context* ctx_;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordtype">size_t</span> index_;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* name_;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;};</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"> #endif // GRPCXX_AUTH_PROPERTY_ITERATOR_H</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"></span></div>
+<div class="ttc" id="namespacegrpc_html_a8e3a499d0002aae3afd1cae08f44a9ee"><div class="ttname"><a href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">grpc::AuthProperty</a></div><div class="ttdeci">std::pair&lt; grpc::string, grpc::string &gt; AuthProperty</div><div class="ttdef"><b>Definition:</b> auth_property_iterator.h:47</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html_a2885e02ba1b9caad818a1bcdf648d949"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949">grpc::AuthPropertyIterator::AuthPropertyIterator</a></div><div class="ttdeci">AuthPropertyIterator()</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html_af3d2671fe70be36b2ed26a75874f2fc1"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html#af3d2671fe70be36b2ed26a75874f2fc1">grpc::AuthPropertyIterator::operator!=</a></div><div class="ttdeci">bool operator!=(const AuthPropertyIterator &amp;rhs) const </div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html_a564f39b91f4168c6f660bbd3144f1f0e"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html#a564f39b91f4168c6f660bbd3144f1f0e">grpc::AuthPropertyIterator::operator*</a></div><div class="ttdeci">const AuthProperty operator*()</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html_ab5ab6a2c9a4df2b02086513716553dee"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html#ab5ab6a2c9a4df2b02086513716553dee">grpc::AuthPropertyIterator::operator==</a></div><div class="ttdeci">bool operator==(const AuthPropertyIterator &amp;rhs) const </div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html_ac4a895110475c25b9bdce9b72eb19cd6"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6">grpc::AuthPropertyIterator::operator++</a></div><div class="ttdeci">AuthPropertyIterator &amp; operator++()</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html">grpc::AuthPropertyIterator</a></div><div class="ttdef"><b>Definition:</b> auth_property_iterator.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html_a91a3a2ce5085a948aac11d7371c13b49"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html#a91a3a2ce5085a948aac11d7371c13b49">grpc::AuthPropertyIterator::~AuthPropertyIterator</a></div><div class="ttdeci">~AuthPropertyIterator()</div></div>
+<div class="ttc" id="classgrpc_1_1_auth_property_iterator_html_a18a70918b1f73cdd22cb263845b78d6d"><div class="ttname"><a href="classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d">grpc::AuthPropertyIterator::SecureAuthContext</a></div><div class="ttdeci">friend class SecureAuthContext</div><div class="ttdef"><b>Definition:</b> auth_property_iterator.h:66</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/bc_s.png b/doc/ref/c++/html/bc_s.png
new file mode 100644
index 0000000000..224b29aa98
--- /dev/null
+++ b/doc/ref/c++/html/bc_s.png
Binary files differ
diff --git a/doc/ref/c++/html/bdwn.png b/doc/ref/c++/html/bdwn.png
new file mode 100644
index 0000000000..940a0b9504
--- /dev/null
+++ b/doc/ref/c++/html/bdwn.png
Binary files differ
diff --git a/doc/ref/c++/html/byte__buffer_8h.html b/doc/ref/c++/html/byte__buffer_8h.html
new file mode 100644
index 0000000000..bbde3a84b8
--- /dev/null
+++ b/doc/ref/c++/html/byte__buffer_8h.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/byte_buffer.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">byte_buffer.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;grpc/grpc.h&gt;</code><br/>
+<code>#include &lt;grpc/byte_buffer.h&gt;</code><br/>
+<code>#include &lt;grpc/support/log.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="slice_8h_source.html">grpc++/slice.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="serialization__traits_8h_source.html">grpc++/impl/serialization_traits.h</a>&gt;</code><br/>
+<code>#include &lt;vector&gt;</code><br/>
+</div>
+<p><a href="byte__buffer_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html">grpc::ByteBuffer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html">grpc::SerializationTraits&lt; ByteBuffer, void &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/byte__buffer_8h_source.html b/doc/ref/c++/html/byte__buffer_8h_source.html
new file mode 100644
index 0000000000..d8f13b8260
--- /dev/null
+++ b/doc/ref/c++/html/byte__buffer_8h_source.html
@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/byte_buffer.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">byte_buffer.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="byte__buffer_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_BYTE_BUFFER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_BYTE_BUFFER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;grpc/grpc.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;grpc/byte_buffer.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;grpc/support/log.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="slice_8h.html">grpc++/slice.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="serialization__traits_8h.html">grpc++/impl/serialization_traits.h</a>&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_byte_buffer.html"> 49</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b"> 51</a></span>&#160; <a class="code" href="classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b">ByteBuffer</a>() : buffer_(nullptr) {}</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b">ByteBuffer</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_slice.html">Slice</a>* slices, <span class="keywordtype">size_t</span> nslices);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a"> 55</a></span>&#160; <a class="code" href="classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a">~ByteBuffer</a>() {</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keywordflow">if</span> (buffer_) {</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; grpc_byte_buffer_destroy(buffer_);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; }</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_byte_buffer.html#a1b284d25c0c3c594c386800c548048f1">Dump</a>(std::vector&lt;Slice&gt;* slices) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80">Clear</a>();</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classgrpc_1_1_byte_buffer.html#a9429e928982f8d94ff93a1a91032ad59">Length</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classgrpc_1_1_byte_buffer.html#ab90fe50537dd6fe009b7b913652420f0"> 67</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a>&lt;<a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, void&gt;;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b">ByteBuffer</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>&amp;);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>&amp;);</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// takes ownership</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">void</span> set_buffer(grpc_byte_buffer* buf) {</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">if</span> (buffer_) {</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; gpr_log(GPR_ERROR, <span class="stringliteral">&quot;Overriding existing buffer&quot;</span>);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80">Clear</a>();</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; buffer_ = buf;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; }</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; grpc_byte_buffer* buffer()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> buffer_; }</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; grpc_byte_buffer* buffer_;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;};</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keyword">template</span> &lt;&gt;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html"> 87</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a>&lt;<a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, void&gt; {</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5"> 89</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5">Deserialize</a>(grpc_byte_buffer* byte_buffer, <a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>* dest,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; dest-&gt;set_buffer(byte_buffer);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">Status::OK</a>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33"> 94</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33">Serialize</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>&amp; source, grpc_byte_buffer** buffer, </div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordtype">bool</span>* own_buffer) {</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; *buffer = source.buffer();</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; *own_buffer = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">Status::OK</a>;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;};</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor">#endif // GRPCXX_BYTE_BUFFER_H</span></div>
+<div class="ttc" id="classgrpc_1_1_byte_buffer_html_a185b593e5c7d2b888fa377989a6bae80"><div class="ttname"><a href="classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80">grpc::ByteBuffer::Clear</a></div><div class="ttdeci">void Clear()</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html"><div class="ttname"><a href="classgrpc_1_1_slice.html">grpc::Slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:42</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="serialization__traits_8h_html"><div class="ttname"><a href="serialization__traits_8h.html">serialization_traits.h</a></div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4_html_ab84ad3da236c61aab17db403b48367f5"><div class="ttname"><a href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5">grpc::SerializationTraits&lt; ByteBuffer, void &gt;::Deserialize</a></div><div class="ttdeci">static Status Deserialize(grpc_byte_buffer *byte_buffer, ByteBuffer *dest, int max_message_size)</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:89</div></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_html"><div class="ttname"><a href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a></div><div class="ttdoc">Defines how to serialize and deserialize some type. </div><div class="ttdef"><b>Definition:</b> serialization_traits.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_byte_buffer_html_a9429e928982f8d94ff93a1a91032ad59"><div class="ttname"><a href="classgrpc_1_1_byte_buffer.html#a9429e928982f8d94ff93a1a91032ad59">grpc::ByteBuffer::Length</a></div><div class="ttdeci">size_t Length() const </div></div>
+<div class="ttc" id="classgrpc_1_1_byte_buffer_html_a1b284d25c0c3c594c386800c548048f1"><div class="ttname"><a href="classgrpc_1_1_byte_buffer.html#a1b284d25c0c3c594c386800c548048f1">grpc::ByteBuffer::Dump</a></div><div class="ttdeci">void Dump(std::vector&lt; Slice &gt; *slices) const </div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="slice_8h_html"><div class="ttname"><a href="slice_8h.html">slice.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_byte_buffer_html_aeb5dd0045ed262de06481465326bd64a"><div class="ttname"><a href="classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a">grpc::ByteBuffer::~ByteBuffer</a></div><div class="ttdeci">~ByteBuffer()</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4_html_a142e6455c0e040332f57bd3a35eebd33"><div class="ttname"><a href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33">grpc::SerializationTraits&lt; ByteBuffer, void &gt;::Serialize</a></div><div class="ttdeci">static Status Serialize(const ByteBuffer &amp;source, grpc_byte_buffer **buffer, bool *own_buffer)</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:94</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_acbac12f241ad08f449aa1b9086ec7acc"><div class="ttname"><a href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">grpc::Status::OK</a></div><div class="ttdeci">static const Status &amp; OK</div><div class="ttdef"><b>Definition:</b> status.h:49</div></div>
+<div class="ttc" id="classgrpc_1_1_byte_buffer_html_aa3037355cbd37dce99c97e5c3700a76b"><div class="ttname"><a href="classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b">grpc::ByteBuffer::ByteBuffer</a></div><div class="ttdeci">ByteBuffer()</div><div class="ttdef"><b>Definition:</b> byte_buffer.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_byte_buffer_html"><div class="ttname"><a href="classgrpc_1_1_byte_buffer.html">grpc::ByteBuffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/call_8h.html b/doc/ref/c++/html/call_8h.html
new file mode 100644
index 0000000000..40c4677bb3
--- /dev/null
+++ b/doc/ref/c++/html/call_8h.html
@@ -0,0 +1,173 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/call.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">call.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;grpc/support/alloc.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="client__context_8h_source.html">grpc++/client_context.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="completion__queue_8h_source.html">grpc++/completion_queue.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="serialization__traits_8h_source.html">grpc++/impl/serialization_traits.h</a>&gt;</code><br/>
+<code>#include &lt;functional&gt;</code><br/>
+<code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;map&gt;</code><br/>
+<code>#include &lt;string.h&gt;</code><br/>
+</div>
+<p><a href="call_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html">grpc::WriteOptions</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Per-message write options. <a href="classgrpc_1_1_write_options.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_no_op.html">grpc::CallNoOp&lt; I &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default argument for <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a>. <a href="classgrpc_1_1_call_no_op.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html">grpc::CallOpSendInitialMetadata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_message.html">grpc::CallOpSendMessage</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html">grpc::CallOpGenericRecvMessage</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html">grpc::CallOpClientSendClose</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html">grpc::CallOpServerSendStatus</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html">grpc::CallOpRecvInitialMetadata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html">grpc::CallOpClientRecvStatus</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html">grpc::CallOpSetInterface</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the lower layers, and as it is-a <a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>, also massages the final completion into the correct form for consumption in the C++ API. <a href="classgrpc_1_1_call_op_set_interface.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a>. <a href="classgrpc_1_1_call_op_set.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html">grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> that does not post completions to the completion queue. <a href="classgrpc_1_1_sneaky_call_op_set.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_hook.html">grpc::CallHook</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html">grpc::Call</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacegrpc_1_1_call_op_generic_recv_message_helper"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html">grpc::CallOpGenericRecvMessageHelper</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a00d2939a7b40a674459016f6148f372d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">grpc::FillMetadataMap</a> (grpc_metadata_array *arr, std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; *metadata)</td></tr>
+<tr class="separator:a00d2939a7b40a674459016f6148f372d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16ecfcd344f569a6fcfa2c42e3a43aca"><td class="memItemLeft" align="right" valign="top">grpc_metadata *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">grpc::FillMetadataArray</a> (const std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;metadata)</td></tr>
+<tr class="separator:a16ecfcd344f569a6fcfa2c42e3a43aca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/call_8h_source.html b/doc/ref/c++/html/call_8h_source.html
new file mode 100644
index 0000000000..8f988de3b1
--- /dev/null
+++ b/doc/ref/c++/html/call_8h_source.html
@@ -0,0 +1,745 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/call.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">call.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="call_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_CALL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_CALL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;grpc/support/alloc.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="client__context_8h.html">grpc++/client_context.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="completion__queue_8h.html">grpc++/completion_queue.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="serialization__traits_8h.html">grpc++/impl/serialization_traits.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;functional&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#include &lt;string.h&gt;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">struct </span>grpc_call;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">struct </span>grpc_op;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">class </span>ByteBuffer;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">class </span>Call;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">FillMetadataMap</a>(grpc_metadata_array* arr,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt;* metadata);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;grpc_metadata* <a class="code" href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">FillMetadataArray</a>(</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">const</span> std::multimap&lt;grpc::string, grpc::string&gt;&amp; metadata);</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html"> 64</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a> {</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#a6a4e429313200ed6c017c5d306e26e93"> 66</a></span>&#160; <a class="code" href="classgrpc_1_1_write_options.html#a6a4e429313200ed6c017c5d306e26e93">WriteOptions</a>() : flags_(0) {}</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021"> 67</a></span>&#160; <a class="code" href="classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021">WriteOptions</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; other) : flags_(other.flags_) {}</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02"> 70</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02">Clear</a>() {</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; flags_ = 0;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; }</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153"> 75</a></span>&#160; <span class="keyword">inline</span> gpr_uint32 <a class="code" href="classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153">flags</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> flags_;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; }</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66"> 82</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; <a class="code" href="classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66">set_no_compression</a>() {</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; SetBit(GRPC_WRITE_NO_COMPRESS);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7"> 90</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; <a class="code" href="classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7">clear_no_compression</a>() {</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; ClearBit(GRPC_WRITE_NO_COMPRESS);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf"> 99</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf">get_no_compression</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> GetBit(GRPC_WRITE_NO_COMPRESS);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8"> 107</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; <a class="code" href="classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8">set_buffer_hint</a>() {</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; SetBit(GRPC_WRITE_BUFFER_HINT);</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f"> 116</a></span>&#160; <span class="keyword">inline</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; <a class="code" href="classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f">clear_buffer_hint</a>() {</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; ClearBit(GRPC_WRITE_BUFFER_HINT);</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; }</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef"> 125</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef">get_buffer_hint</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">return</span> GetBit(GRPC_WRITE_BUFFER_HINT);</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841"> 129</a></span>&#160; <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; <a class="code" href="classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841">operator=</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; rhs) {</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; flags_ = rhs.flags_;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordtype">void</span> SetBit(<span class="keyword">const</span> gpr_int32 mask) {</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; flags_ |= mask;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordtype">void</span> ClearBit(<span class="keyword">const</span> gpr_int32 mask) {</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; flags_ &amp;= ~mask;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; }</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordtype">bool</span> GetBit(<span class="keyword">const</span> gpr_int32 mask)<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordflow">return</span> flags_ &amp; mask;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; }</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; gpr_uint32 flags_;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;};</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="keyword">template</span> &lt;<span class="keywordtype">int</span> I&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_no_op.html"> 153</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_no_op.html">CallNoOp</a> {</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8"> 155</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {}</div>
+<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae"> 156</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {}</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;};</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html"> 159</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a> {</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00161"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8"> 161</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8">CallOpSendInitialMetadata</a>() : <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">send_</a>(false) {}</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
+<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d"> 163</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d">SendInitialMetadata</a>(</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">const</span> std::multimap&lt;grpc::string, grpc::string&gt;&amp; metadata) {</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">send_</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63">initial_metadata_count_</a> = metadata.size();</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">initial_metadata_</a> = <a class="code" href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">FillMetadataArray</a>(metadata);</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77"> 171</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">send_</a>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; op-&gt;op = GRPC_OP_SEND_INITIAL_METADATA;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; op-&gt;flags = 0;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; op-&gt;data.send_initial_metadata.count = <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63">initial_metadata_count_</a>;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; op-&gt;data.send_initial_metadata.metadata = <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">initial_metadata_</a>;</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; }</div>
+<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13"> 179</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (!<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">send_</a>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; gpr_free(<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">initial_metadata_</a>);</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">send_</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30"> 185</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">send_</a>;</div>
+<div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63"> 186</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63">initial_metadata_count_</a>;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4"> 187</a></span>&#160; grpc_metadata* <a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">initial_metadata_</a>;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;};</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
+<div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_message.html"> 190</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a> {</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291"> 192</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291">CallOpSendMessage</a>() : send_buf_(nullptr), own_buf_(false) {}</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> M&gt;</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">SendMessage</a>(<span class="keyword">const</span> M&amp; message,</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; options) GRPC_MUST_USE_RESULT;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> M&gt;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">SendMessage</a>(<span class="keyword">const</span> M&amp; message) GRPC_MUST_USE_RESULT;</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00204"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e"> 204</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keywordflow">if</span> (send_buf_ == <span class="keyword">nullptr</span>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; op-&gt;op = GRPC_OP_SEND_MESSAGE;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; op-&gt;flags = write_options_.<a class="code" href="classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153">flags</a>();</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; op-&gt;data.send_message = send_buf_;</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <span class="comment">// Flags are per-message: clear them after use.</span></div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; write_options_.<a class="code" href="classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02">Clear</a>();</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; }</div>
+<div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b"> 213</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keywordflow">if</span> (own_buf_) grpc_byte_buffer_destroy(send_buf_);</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; send_buf_ = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; }</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; grpc_byte_buffer* send_buf_;</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a> write_options_;</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordtype">bool</span> own_buf_;</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;};</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> M&gt;</div>
+<div class="line"><a name="l00225"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9"> 225</a></span>&#160;<a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">CallOpSendMessage::SendMessage</a>(<span class="keyword">const</span> M&amp; message,</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; options) {</div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; write_options_ = options;</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits&lt;M&gt;::Serialize</a>(message, &amp;send_buf_, &amp;own_buf_);</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;}</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> M&gt;</div>
+<div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_send_message.html#ad9928eeba69f23f54d1c378517a15222"> 232</a></span>&#160;<a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">CallOpSendMessage::SendMessage</a>(<span class="keyword">const</span> M&amp; message) {</div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">SendMessage</a>(message, <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>());</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;}</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00237"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_message.html"> 237</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_recv_message.html">CallOpRecvMessage</a> {</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00239"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253"> 239</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253">CallOpRecvMessage</a>() : <a class="code" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">got_message</a>(false), message_(nullptr) {}</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c"> 241</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c">RecvMessage</a>(R* message) { message_ = message; }</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div>
+<div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57"> 243</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">got_message</a>;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;</div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00246"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a"> 246</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="keywordflow">if</span> (message_ == <span class="keyword">nullptr</span>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; op-&gt;op = GRPC_OP_RECV_MESSAGE;</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; op-&gt;flags = 0;</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; op-&gt;data.recv_message = &amp;recv_buf_;</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div>
+<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6"> 254</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">if</span> (message_ == <span class="keyword">nullptr</span>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">if</span> (recv_buf_) {</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">if</span> (*status) {</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <a class="code" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">got_message</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; *status = <a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits&lt;R&gt;::Deserialize</a>(recv_buf_, message_,</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; max_message_size)</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; .ok();</div>
+<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">got_message</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; grpc_byte_buffer_destroy(recv_buf_);</div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; }</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; <a class="code" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">got_message</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; *status = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; }</div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; message_ = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; }</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;</div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; R* message_;</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; grpc_byte_buffer* recv_buf_;</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;};</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div>
+<div class="line"><a name="l00278"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html"> 278</a></span>&#160;<span class="keyword">namespace </span>CallOpGenericRecvMessageHelper {</div>
+<div class="line"><a name="l00279"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html"> 279</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html">DeserializeFunc</a> {</div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb">Deserialize</a>(grpc_byte_buffer* buf, <span class="keywordtype">int</span> max_message_size) = 0;</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;};</div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html"> 285</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">DeserializeFuncType</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html">DeserializeFunc</a> {</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316"> 287</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316">DeserializeFuncType</a>(R* message) : message_(message) {}</div>
+<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4"> 288</a></span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4">Deserialize</a>(grpc_byte_buffer* buf,</div>
+<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="keywordtype">int</span> max_message_size) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits&lt;R&gt;::Deserialize</a>(buf, message_, max_message_size);</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; }</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; R* message_; <span class="comment">// Not a managed pointer because management is external to this</span></div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;};</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;} <span class="comment">// namespace CallOpGenericRecvMessageHelper</span></div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;</div>
+<div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message.html"> 298</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html">CallOpGenericRecvMessage</a> {</div>
+<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda"> 300</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda">CallOpGenericRecvMessage</a>() : <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">got_message</a>(false) {}</div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788"> 303</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788">RecvMessage</a>(R* message) {</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; deserialize_.reset(</div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <span class="keyword">new</span> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">CallOpGenericRecvMessageHelper::DeserializeFuncType&lt;R&gt;</a>(message));</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; }</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;</div>
+<div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0"> 308</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">got_message</a>;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;</div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00311"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc"> 311</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">if</span> (!deserialize_) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; op-&gt;op = GRPC_OP_RECV_MESSAGE;</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; op-&gt;flags = 0;</div>
+<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; op-&gt;data.recv_message = &amp;recv_buf_;</div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; }</div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;</div>
+<div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16"> 319</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <span class="keywordflow">if</span> (!deserialize_) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; <span class="keywordflow">if</span> (recv_buf_) {</div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; <span class="keywordflow">if</span> (*status) {</div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">got_message</a> = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; *status = deserialize_-&gt;Deserialize(recv_buf_, max_message_size).ok();</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">got_message</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; grpc_byte_buffer_destroy(recv_buf_);</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; }</div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">got_message</a> = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; *status = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; }</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; deserialize_.reset();</div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; }</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; std::unique_ptr&lt;CallOpGenericRecvMessageHelper::DeserializeFunc&gt; deserialize_;</div>
+<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; grpc_byte_buffer* recv_buf_;</div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;};</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160;</div>
+<div class="line"><a name="l00341"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_send_close.html"> 341</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_client_send_close.html">CallOpClientSendClose</a> {</div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e"> 343</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e">CallOpClientSendClose</a>() : send_(false) {}</div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;</div>
+<div class="line"><a name="l00345"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc"> 345</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc">ClientSendClose</a>() { send_ = <span class="keyword">true</span>; }</div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;</div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00348"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a"> 348</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">if</span> (!send_) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; op-&gt;op = GRPC_OP_SEND_CLOSE_FROM_CLIENT;</div>
+<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; op-&gt;flags = 0;</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; }</div>
+<div class="line"><a name="l00354"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656"> 354</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) { send_ = <span class="keyword">false</span>; }</div>
+<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;</div>
+<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; <span class="keywordtype">bool</span> send_;</div>
+<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160;};</div>
+<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;</div>
+<div class="line"><a name="l00360"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_server_send_status.html"> 360</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_server_send_status.html">CallOpServerSendStatus</a> {</div>
+<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00362"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4"> 362</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4">CallOpServerSendStatus</a>() : send_status_available_(false) {}</div>
+<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;</div>
+<div class="line"><a name="l00364"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7"> 364</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7">ServerSendStatus</a>(</div>
+<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <span class="keyword">const</span> std::multimap&lt;grpc::string, grpc::string&gt;&amp; trailing_metadata,</div>
+<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; status) {</div>
+<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; trailing_metadata_count_ = trailing_metadata.size();</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; trailing_metadata_ = <a class="code" href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">FillMetadataArray</a>(trailing_metadata);</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; send_status_available_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; send_status_code_ = <span class="keyword">static_cast&lt;</span>grpc_status_code<span class="keyword">&gt;</span>(status.<a class="code" href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181">error_code</a>());</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; send_status_details_ = status.<a class="code" href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16">error_message</a>();</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; }</div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b"> 375</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <span class="keywordflow">if</span> (!send_status_available_) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; op-&gt;op = GRPC_OP_SEND_STATUS_FROM_SERVER;</div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; op-&gt;data.send_status_from_server.trailing_metadata_count =</div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; trailing_metadata_count_;</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; op-&gt;data.send_status_from_server.trailing_metadata = trailing_metadata_;</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160; op-&gt;data.send_status_from_server.status = send_status_code_;</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; op-&gt;data.send_status_from_server.status_details =</div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; send_status_details_.empty() ? <span class="keyword">nullptr</span> : send_status_details_.c_str();</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; op-&gt;flags = 0;</div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; }</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div>
+<div class="line"><a name="l00388"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978"> 388</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="keywordflow">if</span> (!send_status_available_) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; gpr_free(trailing_metadata_);</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; send_status_available_ = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; }</div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div>
+<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordtype">bool</span> send_status_available_;</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; grpc_status_code send_status_code_;</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> send_status_details_;</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; <span class="keywordtype">size_t</span> trailing_metadata_count_;</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160; grpc_metadata* trailing_metadata_;</div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;};</div>
+<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;</div>
+<div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_initial_metadata.html"> 402</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a> {</div>
+<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00404"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8"> 404</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8">CallOpRecvInitialMetadata</a>() : recv_initial_metadata_(nullptr) {}</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160;</div>
+<div class="line"><a name="l00406"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e"> 406</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e">RecvInitialMetadata</a>(<a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context) {</div>
+<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160; context-&gt;initial_metadata_received_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160; recv_initial_metadata_ = &amp;context-&gt;recv_initial_metadata_;</div>
+<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160; }</div>
+<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160;</div>
+<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74"> 412</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">if</span> (!recv_initial_metadata_) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; memset(&amp;recv_initial_metadata_arr_, 0, <span class="keyword">sizeof</span>(recv_initial_metadata_arr_));</div>
+<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; op-&gt;op = GRPC_OP_RECV_INITIAL_METADATA;</div>
+<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; op-&gt;data.recv_initial_metadata = &amp;recv_initial_metadata_arr_;</div>
+<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; op-&gt;flags = 0;</div>
+<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; }</div>
+<div class="line"><a name="l00420"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb"> 420</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; <span class="keywordflow">if</span> (recv_initial_metadata_ == <span class="keyword">nullptr</span>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <a class="code" href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">FillMetadataMap</a>(&amp;recv_initial_metadata_arr_, recv_initial_metadata_);</div>
+<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; recv_initial_metadata_ = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; }</div>
+<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160;</div>
+<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt;* recv_initial_metadata_;</div>
+<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; grpc_metadata_array recv_initial_metadata_arr_;</div>
+<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;};</div>
+<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160;</div>
+<div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_recv_status.html"> 431</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a> {</div>
+<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00433"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de"> 433</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de">CallOpClientRecvStatus</a>() : recv_status_(nullptr) {}</div>
+<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160;</div>
+<div class="line"><a name="l00435"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813"> 435</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813">ClientRecvStatus</a>(<a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context, <a class="code" href="classgrpc_1_1_status.html">Status</a>* status) {</div>
+<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; recv_trailing_metadata_ = &amp;context-&gt;trailing_metadata_;</div>
+<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; recv_status_ = status;</div>
+<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; }</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160;</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00441"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62"> 441</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62">AddOp</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) {</div>
+<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">if</span> (recv_status_ == <span class="keyword">nullptr</span>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; memset(&amp;recv_trailing_metadata_arr_, 0,</div>
+<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; <span class="keyword">sizeof</span>(recv_trailing_metadata_arr_));</div>
+<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160; status_details_ = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00446"></a><span class="lineno"> 446</span>&#160; status_details_capacity_ = 0;</div>
+<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; grpc_op* op = &amp;ops[(*nops)++];</div>
+<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; op-&gt;op = GRPC_OP_RECV_STATUS_ON_CLIENT;</div>
+<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; op-&gt;data.recv_status_on_client.trailing_metadata =</div>
+<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; &amp;recv_trailing_metadata_arr_;</div>
+<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; op-&gt;data.recv_status_on_client.status = &amp;status_code_;</div>
+<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; op-&gt;data.recv_status_on_client.status_details = &amp;status_details_;</div>
+<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; op-&gt;data.recv_status_on_client.status_details_capacity =</div>
+<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; &amp;status_details_capacity_;</div>
+<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; op-&gt;flags = 0;</div>
+<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; }</div>
+<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;</div>
+<div class="line"><a name="l00458"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f"> 458</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f">FinishOp</a>(<span class="keywordtype">bool</span>* status, <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <span class="keywordflow">if</span> (recv_status_ == <span class="keyword">nullptr</span>) <span class="keywordflow">return</span>;</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">FillMetadataMap</a>(&amp;recv_trailing_metadata_arr_, recv_trailing_metadata_);</div>
+<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; *recv_status_ = <a class="code" href="classgrpc_1_1_status.html">Status</a>(</div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; static_cast&lt;StatusCode&gt;(status_code_),</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; status_details_ ? <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>(status_details_) : <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>());</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; gpr_free(status_details_);</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; recv_status_ = <span class="keyword">nullptr</span>;</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; }</div>
+<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;</div>
+<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt;* recv_trailing_metadata_;</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a>* recv_status_;</div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; grpc_metadata_array recv_trailing_metadata_arr_;</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; grpc_status_code status_code_;</div>
+<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <span class="keywordtype">char</span>* status_details_;</div>
+<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordtype">size_t</span> status_details_capacity_;</div>
+<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;};</div>
+<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160;</div>
+<div class="line"><a name="l00482"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set_interface.html"> 482</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a> {</div>
+<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00484"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000"> 484</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000">CallOpSetInterface</a>() : <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>(0) {}</div>
+<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874">FillOps</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) = 0;</div>
+<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160;</div>
+<div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a"> 489</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a">set_max_message_size</a>(<span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a> = max_message_size;</div>
+<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; }</div>
+<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160;</div>
+<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00494"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf"> 494</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>;</div>
+<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;};</div>
+<div class="line"><a name="l00496"></a><span class="lineno"> 496</span>&#160;</div>
+<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> Op1 = CallNoOp&lt;1&gt;, <span class="keyword">class</span> Op2 = CallNoOp&lt;2&gt;,</div>
+<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160; <span class="keyword">class</span> Op3 = CallNoOp&lt;3&gt;, <span class="keyword">class</span> Op4 = CallNoOp&lt;4&gt;,</div>
+<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; <span class="keyword">class</span> Op5 = CallNoOp&lt;5&gt;, <span class="keyword">class</span> Op6 = CallNoOp&lt;6&gt;&gt;</div>
+<div class="line"><a name="l00506"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set.html"> 506</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a>,</div>
+<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <span class="keyword">public</span> Op1,</div>
+<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; <span class="keyword">public</span> Op2,</div>
+<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; <span class="keyword">public</span> Op3,</div>
+<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keyword">public</span> Op4,</div>
+<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; <span class="keyword">public</span> Op5,</div>
+<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; <span class="keyword">public</span> Op6 {</div>
+<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00514"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf"> 514</a></span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf">CallOpSet</a>() : return_tag_(this) {}</div>
+<div class="line"><a name="l00515"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c"> 515</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">FillOps</a>(grpc_op* ops, <span class="keywordtype">size_t</span>* nops) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160; this-&gt;Op1::AddOp(ops, nops);</div>
+<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; this-&gt;Op2::AddOp(ops, nops);</div>
+<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; this-&gt;Op3::AddOp(ops, nops);</div>
+<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; this-&gt;Op4::AddOp(ops, nops);</div>
+<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; this-&gt;Op5::AddOp(ops, nops);</div>
+<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; this-&gt;Op6::AddOp(ops, nops);</div>
+<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; }</div>
+<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160;</div>
+<div class="line"><a name="l00524"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180"> 524</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">FinalizeResult</a>(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* status) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160; this-&gt;Op1::FinishOp(status, <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>);</div>
+<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; this-&gt;Op2::FinishOp(status, <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>);</div>
+<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; this-&gt;Op3::FinishOp(status, <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>);</div>
+<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; this-&gt;Op4::FinishOp(status, <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>);</div>
+<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; this-&gt;Op5::FinishOp(status, <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>);</div>
+<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; this-&gt;Op6::FinishOp(status, <a class="code" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a>);</div>
+<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; *tag = return_tag_;</div>
+<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; }</div>
+<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160;</div>
+<div class="line"><a name="l00535"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274"> 535</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274">set_output_tag</a>(<span class="keywordtype">void</span>* return_tag) { return_tag_ = return_tag; }</div>
+<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;</div>
+<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160; <span class="keywordtype">void</span>* return_tag_;</div>
+<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160;};</div>
+<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160;</div>
+<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> Op1 = CallNoOp&lt;1&gt;, <span class="keyword">class</span> Op2 = CallNoOp&lt;2&gt;,</div>
+<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <span class="keyword">class</span> Op3 = CallNoOp&lt;3&gt;, <span class="keyword">class</span> Op4 = CallNoOp&lt;4&gt;,</div>
+<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; <span class="keyword">class</span> Op5 = CallNoOp&lt;5&gt;, <span class="keyword">class</span> Op6 = CallNoOp&lt;6&gt;&gt;</div>
+<div class="line"><a name="l00548"></a><span class="lineno"><a class="line" href="classgrpc_1_1_sneaky_call_op_set.html"> 548</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_sneaky_call_op_set.html">SneakyCallOpSet</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div>
+<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet</a>&lt;Op1, Op2, Op3, Op4, Op5, Op6&gt; {</div>
+<div class="line"><a name="l00550"></a><span class="lineno"> 550</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00551"></a><span class="lineno"><a class="line" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd"> 551</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">FinalizeResult</a>(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* status) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keyword">typedef</span> <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;Op1, Op2, Op3, Op4, Op5, Op6&gt;</a> Base;</div>
+<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; <span class="keywordflow">return</span> Base::FinalizeResult(tag, status) &amp;&amp; <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; }</div>
+<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160;};</div>
+<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160;</div>
+<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160;<span class="comment">// Channel and Server implement this to allow them to hook performing ops</span></div>
+<div class="line"><a name="l00558"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_hook.html"> 558</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_hook.html">CallHook</a> {</div>
+<div class="line"><a name="l00559"></a><span class="lineno"> 559</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00560"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d"> 560</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d">~CallHook</a>() {}</div>
+<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29">PerformOpsOnCall</a>(<a class="code" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a>* ops, <a class="code" href="classgrpc_1_1_call.html">Call</a>* call) = 0;</div>
+<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160;};</div>
+<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160;</div>
+<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;<span class="comment">// Straightforward wrapping of the C call object</span></div>
+<div class="line"><a name="l00565"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call.html"> 565</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call.html">Call</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <span class="comment">/* call is owned by the caller */</span></div>
+<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; <a class="code" href="classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a">Call</a>(grpc_call* <a class="code" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">call</a>, <a class="code" href="classgrpc_1_1_call_hook.html">CallHook</a>* call_hook_, <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* <a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>);</div>
+<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <a class="code" href="classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a">Call</a>(grpc_call* call, <a class="code" href="classgrpc_1_1_call_hook.html">CallHook</a>* call_hook_, <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq,</div>
+<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; <span class="keywordtype">int</span> <a class="code" href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095">max_message_size</a>);</div>
+<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160;</div>
+<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(<a class="code" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a>* ops);</div>
+<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160;</div>
+<div class="line"><a name="l00574"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38"> 574</a></span>&#160; grpc_call* <a class="code" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">call</a>() { <span class="keywordflow">return</span> call_; }</div>
+<div class="line"><a name="l00575"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14"> 575</a></span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* <a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>() { <span class="keywordflow">return</span> cq_; }</div>
+<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div>
+<div class="line"><a name="l00577"></a><span class="lineno"><a class="line" href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095"> 577</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095">max_message_size</a>() { <span class="keywordflow">return</span> max_message_size_; }</div>
+<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160;</div>
+<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; <a class="code" href="classgrpc_1_1_call_hook.html">CallHook</a>* call_hook_;</div>
+<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq_;</div>
+<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; grpc_call* call_;</div>
+<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; <span class="keywordtype">int</span> max_message_size_;</div>
+<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;};</div>
+<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160;</div>
+<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;</div>
+<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_CALL_H</span></div>
+<div class="ttc" id="classgrpc_1_1_call_op_server_send_status_html_ac2720fa707f1fe321afdf3a971bebcf7"><div class="ttname"><a href="classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7">grpc::CallOpServerSendStatus::ServerSendStatus</a></div><div class="ttdeci">void ServerSendStatus(const std::multimap&lt; grpc::string, grpc::string &gt; &amp;trailing_metadata, const Status &amp;status)</div><div class="ttdef"><b>Definition:</b> call.h:364</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_ac588bdaf930ff18cab36271a686b9a0a"><div class="ttname"><a href="classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a">grpc::Call::Call</a></div><div class="ttdeci">Call(grpc_call *call, CallHook *call_hook_, CompletionQueue *cq)</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html_a6c99b156711d0dc093a8578b45901cd8"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8">grpc::CallOpRecvInitialMetadata::CallOpRecvInitialMetadata</a></div><div class="ttdeci">CallOpRecvInitialMetadata()</div><div class="ttdef"><b>Definition:</b> call.h:404</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_html_a0235adb3ae82cf78552f556856feb788"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788">grpc::CallOpGenericRecvMessage::RecvMessage</a></div><div class="ttdeci">void RecvMessage(R *message)</div><div class="ttdef"><b>Definition:</b> call.h:303</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_tag_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue_tag.html">grpc::CompletionQueueTag</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:75</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_a897ba94e51b1f6ead41ade8f92efa89f"><div class="ttname"><a href="classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f">grpc::WriteOptions::clear_buffer_hint</a></div><div class="ttdeci">WriteOptions &amp; clear_buffer_hint()</div><div class="ttdoc">Clears flag indicating that the write may be buffered and need not go out on the wire immediately...</div><div class="ttdef"><b>Definition:</b> call.h:116</div></div>
+<div class="ttc" id="classgrpc_1_1_call_no_op_html"><div class="ttname"><a href="classgrpc_1_1_call_no_op.html">grpc::CallNoOp</a></div><div class="ttdoc">Default argument for CallOpSet. </div><div class="ttdef"><b>Definition:</b> call.h:153</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html_a4415b250cd6d5a82818ba159c272343a"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a">grpc::CallOpClientSendClose::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:348</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_server_send_status_html_ab7a24493e9b8c6f2cc122cf3bd7796e4"><div class="ttname"><a href="classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4">grpc::CallOpServerSendStatus::CallOpServerSendStatus</a></div><div class="ttdeci">CallOpServerSendStatus()</div><div class="ttdef"><b>Definition:</b> call.h:362</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html_a1d7682714b83f3bf495be8a7804fd34d"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d">grpc::CallOpSendInitialMetadata::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata(const std::multimap&lt; grpc::string, grpc::string &gt; &amp;metadata)</div><div class="ttdef"><b>Definition:</b> call.h:163</div></div>
+<div class="ttc" id="namespacegrpc_html_a00d2939a7b40a674459016f6148f372d"><div class="ttname"><a href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">grpc::FillMetadataMap</a></div><div class="ttdeci">void FillMetadataMap(grpc_metadata_array *arr, std::multimap&lt; grpc::string, grpc::string &gt; *metadata)</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_aecd282a8c7424e4b0c1a5f512c44b8a8"><div class="ttname"><a href="classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8">grpc::WriteOptions::set_buffer_hint</a></div><div class="ttdeci">WriteOptions &amp; set_buffer_hint()</div><div class="ttdoc">Sets flag indicating that the write may be buffered and need not go out on the wire immediately...</div><div class="ttdef"><b>Definition:</b> call.h:107</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a87888a7acefced58302f89a295940f16"><div class="ttname"><a href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16">grpc::Status::error_message</a></div><div class="ttdeci">grpc::string error_message() const </div><div class="ttdef"><b>Definition:</b> status.h:53</div></div>
+<div class="ttc" id="completion__queue_8h_html"><div class="ttname"><a href="completion__queue_8h.html">completion_queue.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html_a049e460b94bad04d19e3fbe70ba43291"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291">grpc::CallOpSendMessage::CallOpSendMessage</a></div><div class="ttdeci">CallOpSendMessage()</div><div class="ttdef"><b>Definition:</b> call.h:192</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_html_ac95faf8549212febce73cf6301238dfc"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc">grpc::CallOpGenericRecvMessage::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:311</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_a5a7336b857c427aff2a210b89bb4ac14"><div class="ttname"><a href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">grpc::Call::cq</a></div><div class="ttdeci">CompletionQueue * cq()</div><div class="ttdef"><b>Definition:</b> call.h:575</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_html_a40eba461f56840935c97934829b38e16"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16">grpc::CallOpGenericRecvMessage::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:319</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_a7bc26dd151ed56bc49329ca895fe15e7"><div class="ttname"><a href="classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7">grpc::WriteOptions::clear_no_compression</a></div><div class="ttdeci">WriteOptions &amp; clear_no_compression()</div><div class="ttdoc">Clears flag for the disabling of compression for the next message write. </div><div class="ttdef"><b>Definition:</b> call.h:90</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_interface_html_a06354e63efdbbd34fa18270490aaabbf"><div class="ttname"><a href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">grpc::CallOpSetInterface::max_message_size_</a></div><div class="ttdeci">int max_message_size_</div><div class="ttdef"><b>Definition:</b> call.h:494</div></div>
+<div class="ttc" id="classgrpc_1_1_sneaky_call_op_set_html_a0ade5b329d43a4002388bac90a8bbafd"><div class="ttname"><a href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">grpc::SneakyCallOpSet::FinalizeResult</a></div><div class="ttdeci">bool FinalizeResult(void **tag, bool *status) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> call.h:551</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_interface_html"><div class="ttname"><a href="classgrpc_1_1_call_op_set_interface.html">grpc::CallOpSetInterface</a></div><div class="ttdoc">An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...</div><div class="ttdef"><b>Definition:</b> call.h:482</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html">grpc::CallOpClientRecvStatus</a></div><div class="ttdef"><b>Definition:</b> call.h:431</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html_a7c9bcf88cc1ddf2c6cf85cf141c85656"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656">grpc::CallOpClientSendClose::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:354</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_message_html_a2d939fbfc75732244f389a5e2b97ab0a"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a">grpc::CallOpRecvMessage::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:246</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html_a66575110fdb84b974182154a01464180"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet::FinalizeResult</a></div><div class="ttdeci">bool FinalizeResult(void **tag, bool *status) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> call.h:524</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_a9fc0e51224292b15dcfefec342fa0e02"><div class="ttname"><a href="classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02">grpc::WriteOptions::Clear</a></div><div class="ttdeci">void Clear()</div><div class="ttdoc">Clear all flags. </div><div class="ttdef"><b>Definition:</b> call.h:70</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html_a214a005bed5dd03d6dfa16f7a28b205b"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b">grpc::CallOpSendMessage::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:213</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_server_send_status_html_a7381b06ae0268853ebf9ed3b2737698b"><div class="ttname"><a href="classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b">grpc::CallOpServerSendStatus::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:375</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="serialization__traits_8h_html"><div class="ttname"><a href="serialization__traits_8h.html">serialization_traits.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_a6a4e429313200ed6c017c5d306e26e93"><div class="ttname"><a href="classgrpc_1_1_write_options.html#a6a4e429313200ed6c017c5d306e26e93">grpc::WriteOptions::WriteOptions</a></div><div class="ttdeci">WriteOptions()</div><div class="ttdef"><b>Definition:</b> call.h:66</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_server_send_status_html"><div class="ttname"><a href="classgrpc_1_1_call_op_server_send_status.html">grpc::CallOpServerSendStatus</a></div><div class="ttdef"><b>Definition:</b> call.h:360</div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html_a886b55145cdad0994ec589b4f4c7df9c"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet::FillOps</a></div><div class="ttdeci">void FillOps(grpc_op *ops, size_t *nops) GRPC_OVERRIDE</div><div class="ttdoc">Fills in grpc_op, starting from ops[*nops] and moving upwards. </div><div class="ttdef"><b>Definition:</b> call.h:515</div></div>
+<div class="ttc" id="namespacegrpc_html_a16ecfcd344f569a6fcfa2c42e3a43aca"><div class="ttname"><a href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">grpc::FillMetadataArray</a></div><div class="ttdeci">grpc_metadata * FillMetadataArray(const std::multimap&lt; grpc::string, grpc::string &gt; &amp;metadata)</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_a38a1f110afa06bdfd666d00dfa281a38"><div class="ttname"><a href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">grpc::Call::call</a></div><div class="ttdeci">grpc_call * call()</div><div class="ttdef"><b>Definition:</b> call.h:574</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html_ac57cf7a43da437b8b4556839f0403a77"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77">grpc::CallOpSendInitialMetadata::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:171</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_afe5f12d1bf9ed01b7a833458dc889b66"><div class="ttname"><a href="classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66">grpc::WriteOptions::set_no_compression</a></div><div class="ttdeci">WriteOptions &amp; set_no_compression()</div><div class="ttdoc">Sets flag for the disabling of compression for the next message write. </div><div class="ttdef"><b>Definition:</b> call.h:82</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_abe3d32a3e5879022e7b8f1c6a7533841"><div class="ttname"><a href="classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841">grpc::WriteOptions::operator=</a></div><div class="ttdeci">WriteOptions &amp; operator=(const WriteOptions &amp;rhs)</div><div class="ttdef"><b>Definition:</b> call.h:129</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_a0e047a4f3d159749153bff276880e153"><div class="ttname"><a href="classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153">grpc::WriteOptions::flags</a></div><div class="ttdeci">gpr_uint32 flags() const </div><div class="ttdoc">Returns raw flags bitset. </div><div class="ttdef"><b>Definition:</b> call.h:75</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html_ac6fcc3bc9d7725d1ce822b560156445f"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f">grpc::CallOpClientRecvStatus::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:458</div></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_html"><div class="ttname"><a href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a></div><div class="ttdoc">Defines how to serialize and deserialize some type. </div><div class="ttdef"><b>Definition:</b> serialization_traits.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html">grpc::CallOpSendMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:190</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html_a2e867bf1e2a14f51fbda7ffe4a9d0e30"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">grpc::CallOpSendInitialMetadata::send_</a></div><div class="ttdeci">bool send_</div><div class="ttdef"><b>Definition:</b> call.h:185</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html_a86b01d095cec90f64a2fbd02da9be7de"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de">grpc::CallOpClientRecvStatus::CallOpClientRecvStatus</a></div><div class="ttdeci">CallOpClientRecvStatus()</div><div class="ttdef"><b>Definition:</b> call.h:433</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_accb16dd92f4001a6d024ffb01178d4bf"><div class="ttname"><a href="classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf">grpc::WriteOptions::get_no_compression</a></div><div class="ttdeci">bool get_no_compression() const </div><div class="ttdoc">Get value for the flag indicating whether compression for the next message write is forcefully disabl...</div><div class="ttdef"><b>Definition:</b> call.h:99</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type_html_aff7b6d6d9e51e6d0bdb3a150bc5f99d4"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType::Deserialize</a></div><div class="ttdeci">Status Deserialize(grpc_byte_buffer *buf, int max_message_size) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> call.h:288</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html_ae06e1a2d051b6b404eec88c4be303bcf"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf">grpc::CallOpSet::CallOpSet</a></div><div class="ttdeci">CallOpSet()</div><div class="ttdef"><b>Definition:</b> call.h:514</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_server_send_status_html_a91b57e7b08540afa237cf7621558c978"><div class="ttname"><a href="classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978">grpc::CallOpServerSendStatus::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:388</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html">grpc::CallOpClientSendClose</a></div><div class="ttdef"><b>Definition:</b> call.h:341</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html_a1cf749118f03392e186d251c48200dd8"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8">grpc::CallOpSendInitialMetadata::CallOpSendInitialMetadata</a></div><div class="ttdeci">CallOpSendInitialMetadata()</div><div class="ttdef"><b>Definition:</b> call.h:161</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html_a12467c52794548c0022256c153ed7e62"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62">grpc::CallOpClientRecvStatus::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:441</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_call_no_op_html_a72c69197fb8ad18542e459bffbd8cbd8"><div class="ttname"><a href="classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8">grpc::CallNoOp::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:155</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html_a85e4703487b89a0557d82237ed4a74eb"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb">grpc::CallOpRecvInitialMetadata::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:420</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_interface_html_ad331a10c0fd65f5a9db680e95682f000"><div class="ttname"><a href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000">grpc::CallOpSetInterface::CallOpSetInterface</a></div><div class="ttdeci">CallOpSetInterface()</div><div class="ttdef"><b>Definition:</b> call.h:484</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type_html"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType</a></div><div class="ttdef"><b>Definition:</b> call.h:285</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_a4d7753bbd8d9d61e2c6d3e49e29be021"><div class="ttname"><a href="classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021">grpc::WriteOptions::WriteOptions</a></div><div class="ttdeci">WriteOptions(const WriteOptions &amp;other)</div><div class="ttdef"><b>Definition:</b> call.h:67</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a></div><div class="ttdoc">Primary implementaiton of CallOpSetInterface. </div><div class="ttdef"><b>Definition:</b> call.h:506</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html_a43cd5b76bc82ccd2292e318bcc2a34cc"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc">grpc::CallOpClientSendClose::ClientSendClose</a></div><div class="ttdeci">void ClientSendClose()</div><div class="ttdef"><b>Definition:</b> call.h:345</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:237</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_aabd1f570cd026b4e5630abc58498a095"><div class="ttname"><a href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095">grpc::Call::max_message_size</a></div><div class="ttdeci">int max_message_size()</div><div class="ttdef"><b>Definition:</b> call.h:577</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html"><div class="ttname"><a href="classgrpc_1_1_write_options.html">grpc::WriteOptions</a></div><div class="ttdoc">Per-message write options. </div><div class="ttdef"><b>Definition:</b> call.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html_a1601bc705c51e46133f2ee97921c712e"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e">grpc::CallOpClientSendClose::CallOpClientSendClose</a></div><div class="ttdeci">CallOpClientSendClose()</div><div class="ttdef"><b>Definition:</b> call.h:343</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html_a58a983a81a17d0b8f3996164f55912ef"><div class="ttname"><a href="classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef">grpc::WriteOptions::get_buffer_hint</a></div><div class="ttdeci">bool get_buffer_hint() const </div><div class="ttdoc">Get value for the flag indicating that the write may be buffered and need not go out on the wire imme...</div><div class="ttdef"><b>Definition:</b> call.h:125</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_message_html_a5f2ead0399f19a906b82f87a82f24253"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253">grpc::CallOpRecvMessage::CallOpRecvMessage</a></div><div class="ttdeci">CallOpRecvMessage()</div><div class="ttdef"><b>Definition:</b> call.h:239</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a78b50cb074bcd9f1dd50e8f212f7e181"><div class="ttname"><a href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181">grpc::Status::error_code</a></div><div class="ttdeci">StatusCode error_code() const </div><div class="ttdef"><b>Definition:</b> status.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html_a3cf3a795e98b7db1488ba6c098ac7dd9"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">grpc::CallOpSendMessage::SendMessage</a></div><div class="ttdeci">Status SendMessage(const M &amp;message, const WriteOptions &amp;options) GRPC_MUST_USE_RESULT</div><div class="ttdoc">Send message using options for the write. </div><div class="ttdef"><b>Definition:</b> call.h:225</div></div>
+<div class="ttc" id="classgrpc_1_1_call_hook_html_acf08b6dd7d1faba4efeeb4937bc81d29"><div class="ttname"><a href="classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29">grpc::CallHook::PerformOpsOnCall</a></div><div class="ttdeci">virtual void PerformOpsOnCall(CallOpSetInterface *ops, Call *call)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_call_no_op_html_a2e39baf8e169ec930d2234c85ca577ae"><div class="ttname"><a href="classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae">grpc::CallNoOp::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:156</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="client__context_8h_html"><div class="ttname"><a href="client__context_8h.html">client_context.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_message_html_a95f94e74f704a7f40e1f2e30aba24c57"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">grpc::CallOpRecvMessage::got_message</a></div><div class="ttdeci">bool got_message</div><div class="ttdef"><b>Definition:</b> call.h:243</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html_aa5af560ab0bb741197553bbb2538b813"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813">grpc::CallOpClientRecvStatus::ClientRecvStatus</a></div><div class="ttdeci">void ClientRecvStatus(ClientContext *context, Status *status)</div><div class="ttdef"><b>Definition:</b> call.h:435</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_a78ca141a1008fbbb122ee4de076edcc4"><div class="ttname"><a href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">grpc::Call::PerformOps</a></div><div class="ttdeci">void PerformOps(CallOpSetInterface *ops)</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_message_html_ac235a695ea9beb6d4ff3f4f220f695c6"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6">grpc::CallOpRecvMessage::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:254</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_interface_html_ac1e3a95ce9a1727011b7e7ce76829f0a"><div class="ttname"><a href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a">grpc::CallOpSetInterface::set_max_message_size</a></div><div class="ttdeci">void set_max_message_size(int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:489</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type_html_ae14165824fb892eefb683da1405e0316"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType::DeserializeFuncType</a></div><div class="ttdeci">DeserializeFuncType(R *message)</div><div class="ttdef"><b>Definition:</b> call.h:287</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html">grpc::CallOpSendInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:159</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_html_af2bc8b34d88cc5d355755ec94bf04bcb"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc::Deserialize</a></div><div class="ttdeci">virtual Status Deserialize(grpc_byte_buffer *buf, int max_message_size)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html_a4f1684c4b023b4e2d348e53f80797f74"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74">grpc::CallOpRecvInitialMetadata::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:412</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_message_html_aa2bdc2952010ab3a017bb859a1c6161c"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c">grpc::CallOpRecvMessage::RecvMessage</a></div><div class="ttdeci">void RecvMessage(R *message)</div><div class="ttdef"><b>Definition:</b> call.h:241</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_html_ae40448871744eb8a25b42003e2543eda"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda">grpc::CallOpGenericRecvMessage::CallOpGenericRecvMessage</a></div><div class="ttdeci">CallOpGenericRecvMessage()</div><div class="ttdef"><b>Definition:</b> call.h:300</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_html_a1dc0ca6159bc74ec6cbfeacb06c697a0"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">grpc::CallOpGenericRecvMessage::got_message</a></div><div class="ttdeci">bool got_message</div><div class="ttdef"><b>Definition:</b> call.h:308</div></div>
+<div class="ttc" id="classgrpc_1_1_sneaky_call_op_set_html"><div class="ttname"><a href="classgrpc_1_1_sneaky_call_op_set.html">grpc::SneakyCallOpSet</a></div><div class="ttdoc">A CallOpSet that does not post completions to the completion queue. </div><div class="ttdef"><b>Definition:</b> call.h:548</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_interface_html_ae0c95dfc28fc2a0add3e3bec1a703874"><div class="ttname"><a href="classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874">grpc::CallOpSetInterface::FillOps</a></div><div class="ttdeci">virtual void FillOps(grpc_op *ops, size_t *nops)=0</div><div class="ttdoc">Fills in grpc_op, starting from ops[*nops] and moving upwards. </div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html_a798d253af317730a5b996a4a55d86274"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274">grpc::CallOpSet::set_output_tag</a></div><div class="ttdeci">void set_output_tag(void *return_tag)</div><div class="ttdef"><b>Definition:</b> call.h:535</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html_a19f3366cf32ceb0199e7f636f870dd63"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63">grpc::CallOpSendInitialMetadata::initial_metadata_count_</a></div><div class="ttdeci">size_t initial_metadata_count_</div><div class="ttdef"><b>Definition:</b> call.h:186</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_call_hook_html"><div class="ttname"><a href="classgrpc_1_1_call_hook.html">grpc::CallHook</a></div><div class="ttdef"><b>Definition:</b> call.h:558</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html_a4dcc9f22c6966baca69cb1935c823a8e"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e">grpc::CallOpRecvInitialMetadata::RecvInitialMetadata</a></div><div class="ttdeci">void RecvInitialMetadata(ClientContext *context)</div><div class="ttdef"><b>Definition:</b> call.h:406</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html">grpc::CallOpRecvInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:402</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html_a5d19fd3ab26c2b54868c9006f374728e"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e">grpc::CallOpSendMessage::AddOp</a></div><div class="ttdeci">void AddOp(grpc_op *ops, size_t *nops)</div><div class="ttdef"><b>Definition:</b> call.h:204</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html_a032d474971352a0f3ca5b1a468fa5fd4"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">grpc::CallOpSendInitialMetadata::initial_metadata_</a></div><div class="ttdeci">grpc_metadata * initial_metadata_</div><div class="ttdef"><b>Definition:</b> call.h:187</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html_a70bd2ec3f8b7b95b02657902ee445a13"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13">grpc::CallOpSendInitialMetadata::FinishOp</a></div><div class="ttdeci">void FinishOp(bool *status, int max_message_size)</div><div class="ttdef"><b>Definition:</b> call.h:179</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message.html">grpc::CallOpGenericRecvMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:298</div></div>
+<div class="ttc" id="classgrpc_1_1_call_hook_html_a4aa1cf199f80f6475c6da0ad679c5d9d"><div class="ttname"><a href="classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d">grpc::CallHook::~CallHook</a></div><div class="ttdeci">virtual ~CallHook()</div><div class="ttdef"><b>Definition:</b> call.h:560</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_html"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc</a></div><div class="ttdef"><b>Definition:</b> call.h:279</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/channel__arguments_8h.html b/doc/ref/c++/html/channel__arguments_8h.html
new file mode 100644
index 0000000000..d72abf9ab2
--- /dev/null
+++ b/doc/ref/c++/html/channel__arguments_8h.html
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/channel_arguments.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">channel_arguments.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;vector&gt;</code><br/>
+<code>#include &lt;list&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;grpc/compression.h&gt;</code><br/>
+<code>#include &lt;grpc/grpc.h&gt;</code><br/>
+</div>
+<p><a href="channel__arguments_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html">grpc::ChannelArguments</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacegrpc_1_1testing"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1testing.html">grpc::testing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/channel__arguments_8h_source.html b/doc/ref/c++/html/channel__arguments_8h_source.html
new file mode 100644
index 0000000000..2826d91e88
--- /dev/null
+++ b/doc/ref/c++/html/channel__arguments_8h_source.html
@@ -0,0 +1,207 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/channel_arguments.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">channel_arguments.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="channel__arguments_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_CHANNEL_ARGUMENTS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_CHANNEL_ARGUMENTS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;grpc/compression.h&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;grpc/grpc.h&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1testing.html"> 45</a></span>&#160;<span class="keyword">namespace </span>testing {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span>ChannelArgumentsTest;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <span class="comment">// namespace testing</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">// Options for channel creation. The user can use generic setters to pass</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment">// key value pairs down to c channel creation code. For grpc related options,</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment">// concrete setters are provided.</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_arguments.html"> 52</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> {</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb"> 54</a></span>&#160; <a class="code" href="classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb">ChannelArguments</a>() {}</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad"> 55</a></span>&#160; <a class="code" href="classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad">~ChannelArguments</a>() {}</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb">ChannelArguments</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a>&amp; other);</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be"> 58</a></span>&#160; <a class="code" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a>&amp; <a class="code" href="classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be">operator=</a>(<a class="code" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> other) {</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d">Swap</a>(other);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d">Swap</a>(<a class="code" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a>&amp; other);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// grpc specific channel argument setters</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// Set target name override for SSL host name checking.</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_channel_arguments.html#af4182e659448184f9618f079a1570328">SetSslTargetNameOverride</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; name);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// TODO(yangg) add flow control options</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// Set the compression algorithm for the channel.</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_channel_arguments.html#aaf332071bbdff5e4a7f3352f4ad564d5">SetCompressionAlgorithm</a>(grpc_compression_algorithm algorithm);</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">// Generic channel argument setters. Only for advanced use cases.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_channel_arguments.html#a2b1c60568a4906bfe0b21781b09cdbbf">SetInt</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; key, <span class="keywordtype">int</span> value);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_channel_arguments.html#a852ac2fe0ac7421fa82927ddda612947">SetString</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; key, <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; value);</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="comment">// Populates given channel_args with args_, does not take ownership.</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_channel_arguments.html#a90ce1857947d36ff894402ad10cb6048">SetChannelArgs</a>(grpc_channel_args* channel_args) <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66"> 81</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66">SecureCredentials</a>;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b"> 82</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b">testing::ChannelArgumentsTest</a>;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">// Returns empty string when it is not set.</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> GetSslTargetNameOverride() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; std::vector&lt;grpc_arg&gt; args_;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; std::list&lt;grpc::string&gt; strings_;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;};</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif // GRPCXX_CHANNEL_ARGUMENTS_H</span></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_ae60893d904f922c32a57fb18e618db66"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66">grpc::ChannelArguments::SecureCredentials</a></div><div class="ttdeci">friend class SecureCredentials</div><div class="ttdef"><b>Definition:</b> channel_arguments.h:81</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_ab9fc942609a77bb3021ba172be262c7b"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b">grpc::ChannelArguments::ChannelArgumentsTest</a></div><div class="ttdeci">friend class testing::ChannelArgumentsTest</div><div class="ttdef"><b>Definition:</b> channel_arguments.h:82</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_a852ac2fe0ac7421fa82927ddda612947"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#a852ac2fe0ac7421fa82927ddda612947">grpc::ChannelArguments::SetString</a></div><div class="ttdeci">void SetString(const grpc::string &amp;key, const grpc::string &amp;value)</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html">grpc::ChannelArguments</a></div><div class="ttdef"><b>Definition:</b> channel_arguments.h:52</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_a3ff4f22c2cf31c01885b2aaefbdd227d"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d">grpc::ChannelArguments::Swap</a></div><div class="ttdeci">void Swap(ChannelArguments &amp;other)</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_aaf332071bbdff5e4a7f3352f4ad564d5"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#aaf332071bbdff5e4a7f3352f4ad564d5">grpc::ChannelArguments::SetCompressionAlgorithm</a></div><div class="ttdeci">void SetCompressionAlgorithm(grpc_compression_algorithm algorithm)</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_af4182e659448184f9618f079a1570328"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#af4182e659448184f9618f079a1570328">grpc::ChannelArguments::SetSslTargetNameOverride</a></div><div class="ttdeci">void SetSslTargetNameOverride(const grpc::string &amp;name)</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_a8058adf243855c3a44030c23ccec05ad"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad">grpc::ChannelArguments::~ChannelArguments</a></div><div class="ttdeci">~ChannelArguments()</div><div class="ttdef"><b>Definition:</b> channel_arguments.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_a2b1c60568a4906bfe0b21781b09cdbbf"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#a2b1c60568a4906bfe0b21781b09cdbbf">grpc::ChannelArguments::SetInt</a></div><div class="ttdeci">void SetInt(const grpc::string &amp;key, int value)</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_ac75ba90de32a5c7f3cb6c62f7ce649be"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be">grpc::ChannelArguments::operator=</a></div><div class="ttdeci">ChannelArguments &amp; operator=(ChannelArguments other)</div><div class="ttdef"><b>Definition:</b> channel_arguments.h:58</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_aecabf1ea1c78a3202544571cf857e8eb"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb">grpc::ChannelArguments::ChannelArguments</a></div><div class="ttdeci">ChannelArguments()</div><div class="ttdef"><b>Definition:</b> channel_arguments.h:54</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html_a90ce1857947d36ff894402ad10cb6048"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html#a90ce1857947d36ff894402ad10cb6048">grpc::ChannelArguments::SetChannelArgs</a></div><div class="ttdeci">void SetChannelArgs(grpc_channel_args *channel_args) const </div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/channel__interface_8h.html b/doc/ref/c++/html/channel__interface_8h.html
new file mode 100644
index 0000000000..87110d00af
--- /dev/null
+++ b/doc/ref/c++/html/channel__interface_8h.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/channel_interface.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">channel_interface.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="call_8h_source.html">grpc++/impl/call.h</a>&gt;</code><br/>
+</div>
+<p><a href="channel__interface_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/channel__interface_8h_source.html b/doc/ref/c++/html/channel__interface_8h_source.html
new file mode 100644
index 0000000000..a073d6db2a
--- /dev/null
+++ b/doc/ref/c++/html/channel__interface_8h_source.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/channel_interface.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">channel_interface.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="channel__interface_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_CHANNEL_INTERFACE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_CHANNEL_INTERFACE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="call_8h.html">grpc++/impl/call.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">struct </span>grpc_call;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">class </span>Call;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span>CallOpBuffer;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">class </span>ClientContext;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">class </span>CompletionQueue;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">class </span>RpcMethod;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">class </span>CallInterface;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_interface.html"> 52</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_call_hook.html">CallHook</a>,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">public</span> std::enable_shared_from_this&lt;ChannelInterface&gt; {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f"> 55</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f">~ChannelInterface</a>() {}</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span>* <a class="code" href="classgrpc_1_1_channel_interface.html#a267926300784051328390b2f7648c99f">RegisterMethod</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* method_name) = 0;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_call.html">Call</a> <a class="code" href="classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0">CreateCall</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method, <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq) = 0;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;};</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif // GRPCXX_CHANNEL_INTERFACE_H</span></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html_a9fd365d30961e8e40805a3c8faf276d0"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0">grpc::ChannelInterface::CreateCall</a></div><div class="ttdeci">virtual Call CreateCall(const RpcMethod &amp;method, ClientContext *context, CompletionQueue *cq)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></div><div class="ttdef"><b>Definition:</b> channel_interface.h:52</div></div>
+<div class="ttc" id="call_8h_html"><div class="ttname"><a href="call_8h.html">call.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html_a267926300784051328390b2f7648c99f"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html#a267926300784051328390b2f7648c99f">grpc::ChannelInterface::RegisterMethod</a></div><div class="ttdeci">virtual void * RegisterMethod(const char *method_name)=0</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html_a3f5145d4778aa952540dc9983cefe13f"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f">grpc::ChannelInterface::~ChannelInterface</a></div><div class="ttdeci">virtual ~ChannelInterface()</div><div class="ttdef"><b>Definition:</b> channel_interface.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_call_hook_html"><div class="ttname"><a href="classgrpc_1_1_call_hook.html">grpc::CallHook</a></div><div class="ttdef"><b>Definition:</b> call.h:558</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classes.html b/doc/ref/c++/html/classes.html
new file mode 100644
index 0000000000..3461897e29
--- /dev/null
+++ b/doc/ref/c++/html/classes.html
@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Structure Index</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Data Structure Index</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
+<table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
+<tr><td rowspan="2" valign="bottom"><a name="letter_A"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;A&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">DeserializeFuncType</a> (<a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html">grpc::CallOpGenericRecvMessageHelper</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html">DynamicThreadPool</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_rpc_service.html">RpcService</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_F"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;F&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;T&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_reader.html">ClientAsyncReader</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;S&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_async_reader_interface.html">AsyncReaderInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_reader_interface.html">ClientAsyncReaderInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html">FixedSizeThreadPool</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_async_writer_interface.html">AsyncWriterInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_G"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;G&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_time_point.html">TimePoint</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html">ClientAsyncReaderWriterInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html">SerializationTraits&lt; ByteBuffer, void &gt;</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html">TimePoint&lt; gpr_timespec &gt;</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html">SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html">TimePoint&lt; std::chrono::system_clock::time_point &gt;</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_B"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;B&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">ClientAsyncResponseReaderInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_generic_stub.html">GenericStub</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server.html">Server</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;W&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_grpc_library.html">GrpcLibrary</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_async_reader.html">ServerAsyncReader</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_writer.html">ClientAsyncWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_H"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;H&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_async_writer_interface.html">ClientAsyncWriterInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_async_response_writer.html">ServerAsyncResponseWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_writer_interface.html">WriterInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td rowspan="2" valign="bottom"><a name="letter_C"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;C&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">MethodHandler::HandlerParameter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_c"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;c&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_client_reader.html">ClientReader</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;I&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_server_async_writer.html">ServerAsyncWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call.html">Call</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_reader_interface.html">ClientReaderInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_builder.html">ServerBuilder</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1condition__variable.html">condition_variable</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_hook.html">CallHook</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_reader_writer.html">ClientReaderWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_internal_stub.html">InternalStub</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_l"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;l&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_no_op.html">CallNoOp</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html">ClientReaderWriterInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;M&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html">CallOpClientSendClose</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_streaming_interface.html">ClientStreamingInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_reader.html">ServerReader</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_m"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;m&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html">CallOpGenericRecvMessage</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_writer.html">ClientWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_P"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;P&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_client_writer_interface.html">ClientWriterInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1mutex.html">mutex</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_recv_message.html">CallOpRecvMessage</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">SslServerCredentialsOptions::PemKeyCertPair</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_server_writer.html">ServerWriter</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_t"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;t&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_R"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;R&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_slice.html">Slice</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html">SneakyCallOpSet</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1thread.html">thread</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html">CallOpServerSendStatus</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_D"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;D&#160;&#160;</div></td></tr></table>
+</td><td valign="top"><a class="el" href="classgrpc_1_1_reader_interface.html">ReaderInterface</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc_1_1_ssl_credentials_options.html">SslCredentialsOptions</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td rowspan="2" valign="bottom"><a name="letter_u"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">&#160;&#160;u&#160;&#160;</div></td></tr></table>
+</td></tr>
+<tr><td valign="top"><a class="el" href="classgrpc_1_1_call_op_set.html">CallOpSet</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td><td valign="top"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html">SslServerCredentialsOptions</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td></td><td valign="top"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html">DeserializeFunc</a> (<a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html">grpc::CallOpGenericRecvMessageHelper</a>)&#160;&#160;&#160;</td><td></td><td></td><td valign="top"><a class="el" href="classgrpc_1_1unique__lock.html">unique_lock</a> (<a class="el" href="namespacegrpc.html">grpc</a>)&#160;&#160;&#160;</td></tr>
+<tr><td></td><td></td><td></td><td></td><td></td></tr>
+</table>
+<div class="qindex"><a class="qindex" href="#letter_A">A</a>&#160;|&#160;<a class="qindex" href="#letter_B">B</a>&#160;|&#160;<a class="qindex" href="#letter_C">C</a>&#160;|&#160;<a class="qindex" href="#letter_D">D</a>&#160;|&#160;<a class="qindex" href="#letter_F">F</a>&#160;|&#160;<a class="qindex" href="#letter_G">G</a>&#160;|&#160;<a class="qindex" href="#letter_H">H</a>&#160;|&#160;<a class="qindex" href="#letter_I">I</a>&#160;|&#160;<a class="qindex" href="#letter_L">L</a>&#160;|&#160;<a class="qindex" href="#letter_M">M</a>&#160;|&#160;<a class="qindex" href="#letter_P">P</a>&#160;|&#160;<a class="qindex" href="#letter_R">R</a>&#160;|&#160;<a class="qindex" href="#letter_S">S</a>&#160;|&#160;<a class="qindex" href="#letter_T">T</a>&#160;|&#160;<a class="qindex" href="#letter_U">U</a>&#160;|&#160;<a class="qindex" href="#letter_W">W</a></div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_async_generic_service.html b/doc/ref/c++/html/classgrpc_1_1_async_generic_service.html
new file mode 100644
index 0000000000..9ec9882bf8
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_async_generic_service.html
@@ -0,0 +1,214 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::AsyncGenericService Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::AsyncGenericService Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="async__generic__service_8h_source.html">async_generic_service.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a60e3bd7ac8673ed0b49b1260a91518ae"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae">AsyncGenericService</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;methods)</td></tr>
+<tr class="separator:a60e3bd7ac8673ed0b49b1260a91518ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeab5c20e89a754d5add4bdaad01a3ef6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_generic_service.html#aeab5c20e89a754d5add4bdaad01a3ef6">RequestCall</a> (<a class="el" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a> *ctx, <a class="el" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">GenericServerAsyncReaderWriter</a> *reader_writer, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag)</td></tr>
+<tr class="separator:aeab5c20e89a754d5add4bdaad01a3ef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ac2055578ac48afabe5af487878450f68"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_generic_service.html#ac2055578ac48afabe5af487878450f68">Server</a></td></tr>
+<tr class="separator:ac2055578ac48afabe5af487878450f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a60e3bd7ac8673ed0b49b1260a91518ae"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::AsyncGenericService::AsyncGenericService </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>methods</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aeab5c20e89a754d5add4bdaad01a3ef6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::AsyncGenericService::RequestCall </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">GenericServerAsyncReaderWriter</a> *&#160;</td>
+ <td class="paramname"><em>reader_writer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>call_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>notification_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ac2055578ac48afabe5af487878450f68"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server.html">Server</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="async__generic__service_8h_source.html">async_generic_service.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_async_reader_interface.html b/doc/ref/c++/html/classgrpc_1_1_async_reader_interface.html
new file mode 100644
index 0000000000..b422746ecb
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_async_reader_interface.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::AsyncReaderInterface&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_async_reader_interface.html">AsyncReaderInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::AsyncReaderInterface&lt; R &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
+<tr class="separator:ac7845d2df90fb380008aadb7f5f2f379"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa644cf63c12ae8c9d5fda16a361f8a11"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">Read</a> (R *msg, void *tag)=0</td></tr>
+<tr class="separator:aa644cf63c12ae8c9d5fda16a361f8a11"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac7845d2df90fb380008aadb7f5f2f379"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface</a>&lt; R &gt;::~<a class="el" href="classgrpc_1_1_async_reader_interface.html">AsyncReaderInterface</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aa644cf63c12ae8c9d5fda16a361f8a11"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface</a>&lt; R &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f">grpc::ServerAsyncReader&lt; W, R &gt;</a>, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>, and <a class="el" href="classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d">grpc::ClientAsyncReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_async_writer_interface.html b/doc/ref/c++/html/classgrpc_1_1_async_writer_interface.html
new file mode 100644
index 0000000000..43c90b23da
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_async_writer_interface.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::AsyncWriterInterface&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_async_writer_interface.html">AsyncWriterInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::AsyncWriterInterface&lt; W &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a94cc9e4ed13c8fe4a1d883d465477ddd"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a> ()</td></tr>
+<tr class="separator:a94cc9e4ed13c8fe4a1d883d465477ddd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40c1091ac5cb5243c874da725ae291b4"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">Write</a> (const W &amp;msg, void *tag)=0</td></tr>
+<tr class="separator:a40c1091ac5cb5243c874da725ae291b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a94cc9e4ed13c8fe4a1d883d465477ddd"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface</a>&lt; W &gt;::~<a class="el" href="classgrpc_1_1_async_writer_interface.html">AsyncWriterInterface</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a40c1091ac5cb5243c874da725ae291b4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface</a>&lt; W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5">grpc::ServerAsyncWriter&lt; W &gt;</a>, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>, and <a class="el" href="classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a">grpc::ClientAsyncWriter&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_asynchronous_service.html b/doc/ref/c++/html/classgrpc_1_1_asynchronous_service.html
new file mode 100644
index 0000000000..0a4c855778
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_asynchronous_service.html
@@ -0,0 +1,465 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::AsynchronousService Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::AsynchronousService Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="service__type_8h_source.html">service_type.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aacdfbb6050c0d572892681ecd8c5b01b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b">AsynchronousService</a> (const char **method_names, size_t method_count)</td></tr>
+<tr class="separator:aacdfbb6050c0d572892681ecd8c5b01b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0f1526b3617c6b69d4774194acc6aa00"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00">~AsynchronousService</a> ()</td></tr>
+<tr class="separator:a0f1526b3617c6b69d4774194acc6aa00"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a19c9368c6cd8ea4b296c9023cc96b990"><td class="memTemplParams" colspan="2">template&lt;class Message &gt; </td></tr>
+<tr class="memitem:a19c9368c6cd8ea4b296c9023cc96b990"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990">RequestAsyncUnary</a> (int index, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *context, Message *request, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *stream, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag)</td></tr>
+<tr class="separator:a19c9368c6cd8ea4b296c9023cc96b990"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3694e436bb163a5162cf915a7e277369"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369">RequestClientStreaming</a> (int index, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *context, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *stream, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag)</td></tr>
+<tr class="separator:a3694e436bb163a5162cf915a7e277369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a197117ab963be83b26e1c67d5a7fd564"><td class="memTemplParams" colspan="2">template&lt;class Message &gt; </td></tr>
+<tr class="memitem:a197117ab963be83b26e1c67d5a7fd564"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564">RequestServerStreaming</a> (int index, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *context, Message *request, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *stream, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag)</td></tr>
+<tr class="separator:a197117ab963be83b26e1c67d5a7fd564"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b7e40607e2bb45b2901a4990847f608"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608">RequestBidiStreaming</a> (int index, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *context, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *stream, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *call_cq, <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *notification_cq, void *tag)</td></tr>
+<tr class="separator:a3b7e40607e2bb45b2901a4990847f608"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ac2055578ac48afabe5af487878450f68"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html#ac2055578ac48afabe5af487878450f68">Server</a></td></tr>
+<tr class="separator:ac2055578ac48afabe5af487878450f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aacdfbb6050c0d572892681ecd8c5b01b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::AsynchronousService::AsynchronousService </td>
+ <td>(</td>
+ <td class="paramtype">const char **&#160;</td>
+ <td class="paramname"><em>method_names</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>method_count</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0f1526b3617c6b69d4774194acc6aa00"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::AsynchronousService::~AsynchronousService </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a19c9368c6cd8ea4b296c9023cc96b990"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Message &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::AsynchronousService::RequestAsyncUnary </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>index</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">Message *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>call_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>notification_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3b7e40607e2bb45b2901a4990847f608"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::AsynchronousService::RequestBidiStreaming </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>index</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>call_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>notification_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3694e436bb163a5162cf915a7e277369"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::AsynchronousService::RequestClientStreaming </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>index</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>call_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>notification_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a197117ab963be83b26e1c67d5a7fd564"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Message &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::AsynchronousService::RequestServerStreaming </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>index</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">Message *&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> *&#160;</td>
+ <td class="paramname"><em>stream</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>call_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>notification_cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ac2055578ac48afabe5af487878450f68"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server.html">Server</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="service__type_8h_source.html">service_type.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_auth_context.html b/doc/ref/c++/html/classgrpc_1_1_auth_context.html
new file mode 100644
index 0000000000..a32a1082d6
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_auth_context.html
@@ -0,0 +1,266 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::AuthContext Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::AuthContext Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="auth__context_8h_source.html">auth_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a3784c5f4eeab56a8524da29981548464"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464">~AuthContext</a> ()</td></tr>
+<tr class="separator:a3784c5f4eeab56a8524da29981548464"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94f653509ddd988ce8fd4f22746fead9"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html#a94f653509ddd988ce8fd4f22746fead9">GetPeerIdentity</a> () const =0</td></tr>
+<tr class="separator:a94f653509ddd988ce8fd4f22746fead9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7b2e589590246b953decd05cdaa4465"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html#ad7b2e589590246b953decd05cdaa4465">GetPeerIdentityPropertyName</a> () const =0</td></tr>
+<tr class="separator:ad7b2e589590246b953decd05cdaa4465"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad34c79f4934c974aa9e77ca69eed82aa"><td class="memItemLeft" align="right" valign="top">virtual std::vector&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html#ad34c79f4934c974aa9e77ca69eed82aa">FindPropertyValues</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;name) const =0</td></tr>
+<tr class="separator:ad34c79f4934c974aa9e77ca69eed82aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4a4a9e18e05e1a06cf25b8a77edd8c89"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html#a4a4a9e18e05e1a06cf25b8a77edd8c89">begin</a> () const =0</td></tr>
+<tr class="separator:a4a4a9e18e05e1a06cf25b8a77edd8c89"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a81d358b427e0f1096e148918cdeef991"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html#a81d358b427e0f1096e148918cdeef991">end</a> () const =0</td></tr>
+<tr class="separator:a81d358b427e0f1096e148918cdeef991"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a3784c5f4eeab56a8524da29981548464"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::AuthContext::~AuthContext </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a4a4a9e18e05e1a06cf25b8a77edd8c89"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> grpc::AuthContext::begin </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a81d358b427e0f1096e148918cdeef991"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> grpc::AuthContext::end </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad34c79f4934c974aa9e77ca69eed82aa"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual std::vector&lt;<a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&gt; grpc::AuthContext::FindPropertyValues </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>name</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a94f653509ddd988ce8fd4f22746fead9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual std::vector&lt;<a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&gt; grpc::AuthContext::GetPeerIdentity </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad7b2e589590246b953decd05cdaa4465"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::AuthContext::GetPeerIdentityPropertyName </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="auth__context_8h_source.html">auth_context.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_auth_property_iterator.html b/doc/ref/c++/html/classgrpc_1_1_auth_property_iterator.html
new file mode 100644
index 0000000000..681a9a4090
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_auth_property_iterator.html
@@ -0,0 +1,312 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::AuthPropertyIterator Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::AuthPropertyIterator Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="auth__property__iterator_8h_source.html">auth_property_iterator.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a91a3a2ce5085a948aac11d7371c13b49"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#a91a3a2ce5085a948aac11d7371c13b49">~AuthPropertyIterator</a> ()</td></tr>
+<tr class="separator:a91a3a2ce5085a948aac11d7371c13b49"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac4a895110475c25b9bdce9b72eb19cd6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6">operator++</a> ()</td></tr>
+<tr class="separator:ac4a895110475c25b9bdce9b72eb19cd6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76dd5ef5047b10f889d85ce2bb33b84b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#a76dd5ef5047b10f889d85ce2bb33b84b">operator++</a> (int)</td></tr>
+<tr class="separator:a76dd5ef5047b10f889d85ce2bb33b84b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab5ab6a2c9a4df2b02086513716553dee"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#ab5ab6a2c9a4df2b02086513716553dee">operator==</a> (const <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> &amp;rhs) const </td></tr>
+<tr class="separator:ab5ab6a2c9a4df2b02086513716553dee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3d2671fe70be36b2ed26a75874f2fc1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#af3d2671fe70be36b2ed26a75874f2fc1">operator!=</a> (const <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> &amp;rhs) const </td></tr>
+<tr class="separator:af3d2671fe70be36b2ed26a75874f2fc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a564f39b91f4168c6f660bbd3144f1f0e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">AuthProperty</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#a564f39b91f4168c6f660bbd3144f1f0e">operator*</a> ()</td></tr>
+<tr class="separator:a564f39b91f4168c6f660bbd3144f1f0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a2885e02ba1b9caad818a1bcdf648d949"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949">AuthPropertyIterator</a> ()</td></tr>
+<tr class="separator:a2885e02ba1b9caad818a1bcdf648d949"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aee44bb7255a99611cf490532b7e110d5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#aee44bb7255a99611cf490532b7e110d5">AuthPropertyIterator</a> (const grpc_auth_property *property, const grpc_auth_property_iterator *iter)</td></tr>
+<tr class="separator:aee44bb7255a99611cf490532b7e110d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a18a70918b1f73cdd22cb263845b78d6d"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d">SecureAuthContext</a></td></tr>
+<tr class="separator:a18a70918b1f73cdd22cb263845b78d6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a91a3a2ce5085a948aac11d7371c13b49"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::AuthPropertyIterator::~AuthPropertyIterator </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2885e02ba1b9caad818a1bcdf648d949"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::AuthPropertyIterator::AuthPropertyIterator </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aee44bb7255a99611cf490532b7e110d5"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::AuthPropertyIterator::AuthPropertyIterator </td>
+ <td>(</td>
+ <td class="paramtype">const grpc_auth_property *&#160;</td>
+ <td class="paramname"><em>property</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const grpc_auth_property_iterator *&#160;</td>
+ <td class="paramname"><em>iter</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="af3d2671fe70be36b2ed26a75874f2fc1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::AuthPropertyIterator::operator!= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> &amp;&#160;</td>
+ <td class="paramname"><em>rhs</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a564f39b91f4168c6f660bbd3144f1f0e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">AuthProperty</a> grpc::AuthPropertyIterator::operator* </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac4a895110475c25b9bdce9b72eb19cd6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a>&amp; grpc::AuthPropertyIterator::operator++ </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76dd5ef5047b10f889d85ce2bb33b84b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> grpc::AuthPropertyIterator::operator++ </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab5ab6a2c9a4df2b02086513716553dee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::AuthPropertyIterator::operator== </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a> &amp;&#160;</td>
+ <td class="paramname"><em>rhs</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a18a70918b1f73cdd22cb263845b78d6d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class SecureAuthContext</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="auth__property__iterator_8h_source.html">auth_property_iterator.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_bidi_streaming_handler.html b/doc/ref/c++/html/classgrpc_1_1_bidi_streaming_handler.html
new file mode 100644
index 0000000000..5cb0ad2d13
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_bidi_streaming_handler.html
@@ -0,0 +1,187 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a341a08e8b6bab7dfd8debe0ed0178b34"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34">BidiStreamingHandler</a> (std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, <a class="el" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a>&lt; ResponseType, RequestType &gt; *)&gt; func, ServiceType *service)</td></tr>
+<tr class="separator:a341a08e8b6bab7dfd8debe0ed0178b34"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a674385b5e9f48ffff0bcbc5d77f99bf1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1">RunHandler</a> (const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;param)</td></tr>
+<tr class="separator:a674385b5e9f48ffff0bcbc5d77f99bf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_method_handler"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_method_handler')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_method_handler.html">grpc::MethodHandler</a></td></tr>
+<tr class="memitem:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">~MethodHandler</a> ()</td></tr>
+<tr class="separator:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a341a08e8b6bab7dfd8debe0ed0178b34"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">grpc::BidiStreamingHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::<a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a> </td>
+ <td>(</td>
+ <td class="paramtype">std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, <a class="el" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a>&lt; ResponseType, RequestType &gt; *)&gt;&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ServiceType *&#160;</td>
+ <td class="paramname"><em>service</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a674385b5e9f48ffff0bcbc5d77f99bf1"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">grpc::BidiStreamingHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::RunHandler </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;&#160;</td>
+ <td class="paramname"><em>param</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">grpc::MethodHandler</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_byte_buffer.html b/doc/ref/c++/html/classgrpc_1_1_byte_buffer.html
new file mode 100644
index 0000000000..9fd972b91c
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_byte_buffer.html
@@ -0,0 +1,272 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ByteBuffer Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ByteBuffer Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">byte_buffer.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa3037355cbd37dce99c97e5c3700a76b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b">ByteBuffer</a> ()</td></tr>
+<tr class="separator:aa3037355cbd37dce99c97e5c3700a76b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa1f69f81c3cb03c61b544a0222e83004"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html#aa1f69f81c3cb03c61b544a0222e83004">ByteBuffer</a> (const <a class="el" href="classgrpc_1_1_slice.html">Slice</a> *slices, size_t nslices)</td></tr>
+<tr class="separator:aa1f69f81c3cb03c61b544a0222e83004"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb5dd0045ed262de06481465326bd64a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a">~ByteBuffer</a> ()</td></tr>
+<tr class="separator:aeb5dd0045ed262de06481465326bd64a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1b284d25c0c3c594c386800c548048f1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html#a1b284d25c0c3c594c386800c548048f1">Dump</a> (std::vector&lt; <a class="el" href="classgrpc_1_1_slice.html">Slice</a> &gt; *slices) const </td></tr>
+<tr class="separator:a1b284d25c0c3c594c386800c548048f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a185b593e5c7d2b888fa377989a6bae80"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80">Clear</a> ()</td></tr>
+<tr class="separator:a185b593e5c7d2b888fa377989a6bae80"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9429e928982f8d94ff93a1a91032ad59"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html#a9429e928982f8d94ff93a1a91032ad59">Length</a> () const </td></tr>
+<tr class="separator:a9429e928982f8d94ff93a1a91032ad59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ab90fe50537dd6fe009b7b913652420f0"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html#ab90fe50537dd6fe009b7b913652420f0">SerializationTraits&lt; ByteBuffer, void &gt;</a></td></tr>
+<tr class="separator:ab90fe50537dd6fe009b7b913652420f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aa3037355cbd37dce99c97e5c3700a76b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ByteBuffer::ByteBuffer </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa1f69f81c3cb03c61b544a0222e83004"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ByteBuffer::ByteBuffer </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_slice.html">Slice</a> *&#160;</td>
+ <td class="paramname"><em>slices</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t&#160;</td>
+ <td class="paramname"><em>nslices</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb5dd0045ed262de06481465326bd64a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ByteBuffer::~ByteBuffer </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a185b593e5c7d2b888fa377989a6bae80"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ByteBuffer::Clear </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1b284d25c0c3c594c386800c548048f1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ByteBuffer::Dump </td>
+ <td>(</td>
+ <td class="paramtype">std::vector&lt; <a class="el" href="classgrpc_1_1_slice.html">Slice</a> &gt; *&#160;</td>
+ <td class="paramname"><em>slices</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9429e928982f8d94ff93a1a91032ad59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc::ByteBuffer::Length </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ab90fe50537dd6fe009b7b913652420f0"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a>&lt; <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, void &gt;</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="byte__buffer_8h_source.html">byte_buffer.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call.html b/doc/ref/c++/html/classgrpc_1_1_call.html
new file mode 100644
index 0000000000..e588dc2519
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call.html
@@ -0,0 +1,282 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::Call Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call.html">Call</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::Call Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac588bdaf930ff18cab36271a686b9a0a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a">Call</a> (grpc_call *<a class="el" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">call</a>, <a class="el" href="classgrpc_1_1_call_hook.html">CallHook</a> *call_hook_, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *<a class="el" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>)</td></tr>
+<tr class="separator:ac588bdaf930ff18cab36271a686b9a0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82dc146935bbbb535d6c4c9fb9887373"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html#a82dc146935bbbb535d6c4c9fb9887373">Call</a> (grpc_call *<a class="el" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">call</a>, <a class="el" href="classgrpc_1_1_call_hook.html">CallHook</a> *call_hook_, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *<a class="el" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>, int <a class="el" href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095">max_message_size</a>)</td></tr>
+<tr class="separator:a82dc146935bbbb535d6c4c9fb9887373"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78ca141a1008fbbb122ee4de076edcc4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a> (<a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a> *ops)</td></tr>
+<tr class="separator:a78ca141a1008fbbb122ee4de076edcc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38a1f110afa06bdfd666d00dfa281a38"><td class="memItemLeft" align="right" valign="top">grpc_call *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">call</a> ()</td></tr>
+<tr class="separator:a38a1f110afa06bdfd666d00dfa281a38"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5a7336b857c427aff2a210b89bb4ac14"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a> ()</td></tr>
+<tr class="separator:a5a7336b857c427aff2a210b89bb4ac14"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabd1f570cd026b4e5630abc58498a095"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095">max_message_size</a> ()</td></tr>
+<tr class="separator:aabd1f570cd026b4e5630abc58498a095"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac588bdaf930ff18cab36271a686b9a0a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Call::Call </td>
+ <td>(</td>
+ <td class="paramtype">grpc_call *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call_hook.html">CallHook</a> *&#160;</td>
+ <td class="paramname"><em>call_hook_</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a82dc146935bbbb535d6c4c9fb9887373"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Call::Call </td>
+ <td>(</td>
+ <td class="paramtype">grpc_call *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call_hook.html">CallHook</a> *&#160;</td>
+ <td class="paramname"><em>call_hook_</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a38a1f110afa06bdfd666d00dfa281a38"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_call* grpc::Call::call </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5a7336b857c427aff2a210b89bb4ac14"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* grpc::Call::cq </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aabd1f570cd026b4e5630abc58498a095"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc::Call::max_message_size </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78ca141a1008fbbb122ee4de076edcc4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::Call::PerformOps </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a> *&#160;</td>
+ <td class="paramname"><em>ops</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_hook.html b/doc/ref/c++/html/classgrpc_1_1_call_hook.html
new file mode 100644
index 0000000000..29afe74049
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_hook.html
@@ -0,0 +1,176 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallHook Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_hook.html">CallHook</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallHook Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a4aa1cf199f80f6475c6da0ad679c5d9d"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d">~CallHook</a> ()</td></tr>
+<tr class="separator:a4aa1cf199f80f6475c6da0ad679c5d9d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf08b6dd7d1faba4efeeb4937bc81d29"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29">PerformOpsOnCall</a> (<a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a> *ops, <a class="el" href="classgrpc_1_1_call.html">Call</a> *call)=0</td></tr>
+<tr class="separator:acf08b6dd7d1faba4efeeb4937bc81d29"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a4aa1cf199f80f6475c6da0ad679c5d9d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::CallHook::~CallHook </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="acf08b6dd7d1faba4efeeb4937bc81d29"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void grpc::CallHook::PerformOpsOnCall </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a> *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call.html">Call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_no_op.html b/doc/ref/c++/html/classgrpc_1_1_call_no_op.html
new file mode 100644
index 0000000000..6fd6cde0f1
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_no_op.html
@@ -0,0 +1,199 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallNoOp&lt; I &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_no_op.html">CallNoOp</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallNoOp&lt; I &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Default argument for <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a>.
+ <a href="classgrpc_1_1_call_no_op.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a72c69197fb8ad18542e459bffbd8cbd8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:a72c69197fb8ad18542e459bffbd8cbd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2e39baf8e169ec930d2234c85ca577ae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:a2e39baf8e169ec930d2234c85ca577ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;int I&gt;<br/>
+class grpc::CallNoOp&lt; I &gt;</h3>
+
+<p>Default argument for <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a>. </p>
+<p>I is unused by the class, but can be used for generating multiple names for the same thing. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a72c69197fb8ad18542e459bffbd8cbd8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;int I&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_call_no_op.html">grpc::CallNoOp</a>&lt; I &gt;::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e39baf8e169ec930d2234c85ca577ae"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;int I&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_call_no_op.html">grpc::CallNoOp</a>&lt; I &gt;::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_client_recv_status.html b/doc/ref/c++/html/classgrpc_1_1_call_op_client_recv_status.html
new file mode 100644
index 0000000000..e4161d4e8e
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_client_recv_status.html
@@ -0,0 +1,252 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpClientRecvStatus Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpClientRecvStatus Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a86b01d095cec90f64a2fbd02da9be7de"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de">CallOpClientRecvStatus</a> ()</td></tr>
+<tr class="separator:a86b01d095cec90f64a2fbd02da9be7de"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa5af560ab0bb741197553bbb2538b813"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813">ClientRecvStatus</a> (<a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, <a class="el" href="classgrpc_1_1_status.html">Status</a> *status)</td></tr>
+<tr class="separator:aa5af560ab0bb741197553bbb2538b813"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a12467c52794548c0022256c153ed7e62"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:a12467c52794548c0022256c153ed7e62"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6fcc3bc9d7725d1ce822b560156445f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:ac6fcc3bc9d7725d1ce822b560156445f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a86b01d095cec90f64a2fbd02da9be7de"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpClientRecvStatus::CallOpClientRecvStatus </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a12467c52794548c0022256c153ed7e62"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpClientRecvStatus::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa5af560ab0bb741197553bbb2538b813"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpClientRecvStatus::ClientRecvStatus </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> *&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac6fcc3bc9d7725d1ce822b560156445f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpClientRecvStatus::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_client_send_close.html b/doc/ref/c++/html/classgrpc_1_1_call_op_client_send_close.html
new file mode 100644
index 0000000000..eb94da88a5
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_client_send_close.html
@@ -0,0 +1,241 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpClientSendClose Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html">CallOpClientSendClose</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpClientSendClose Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1601bc705c51e46133f2ee97921c712e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e">CallOpClientSendClose</a> ()</td></tr>
+<tr class="separator:a1601bc705c51e46133f2ee97921c712e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43cd5b76bc82ccd2292e318bcc2a34cc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc">ClientSendClose</a> ()</td></tr>
+<tr class="separator:a43cd5b76bc82ccd2292e318bcc2a34cc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a4415b250cd6d5a82818ba159c272343a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:a4415b250cd6d5a82818ba159c272343a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7c9bcf88cc1ddf2c6cf85cf141c85656"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:a7c9bcf88cc1ddf2c6cf85cf141c85656"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a1601bc705c51e46133f2ee97921c712e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpClientSendClose::CallOpClientSendClose </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a4415b250cd6d5a82818ba159c272343a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpClientSendClose::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43cd5b76bc82ccd2292e318bcc2a34cc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpClientSendClose::ClientSendClose </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7c9bcf88cc1ddf2c6cf85cf141c85656"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpClientSendClose::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message.html b/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message.html
new file mode 100644
index 0000000000..a0191d817d
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message.html
@@ -0,0 +1,264 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpGenericRecvMessage Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html">CallOpGenericRecvMessage</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Data Fields</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpGenericRecvMessage Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae40448871744eb8a25b42003e2543eda"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda">CallOpGenericRecvMessage</a> ()</td></tr>
+<tr class="separator:ae40448871744eb8a25b42003e2543eda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0235adb3ae82cf78552f556856feb788"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:a0235adb3ae82cf78552f556856feb788"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788">RecvMessage</a> (R *message)</td></tr>
+<tr class="separator:a0235adb3ae82cf78552f556856feb788"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a1dc0ca6159bc74ec6cbfeacb06c697a0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">got_message</a></td></tr>
+<tr class="separator:a1dc0ca6159bc74ec6cbfeacb06c697a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:ac95faf8549212febce73cf6301238dfc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:ac95faf8549212febce73cf6301238dfc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40eba461f56840935c97934829b38e16"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:a40eba461f56840935c97934829b38e16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ae40448871744eb8a25b42003e2543eda"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpGenericRecvMessage::CallOpGenericRecvMessage </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ac95faf8549212febce73cf6301238dfc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpGenericRecvMessage::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40eba461f56840935c97934829b38e16"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpGenericRecvMessage::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0235adb3ae82cf78552f556856feb788"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpGenericRecvMessage::RecvMessage </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>message</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a1dc0ca6159bc74ec6cbfeacb06c697a0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::CallOpGenericRecvMessage::got_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html b/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html
new file mode 100644
index 0000000000..e58cb702d1
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpGenericRecvMessageHelper::DeserializeFunc Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html">CallOpGenericRecvMessageHelper</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html">DeserializeFunc</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af2bc8b34d88cc5d355755ec94bf04bcb"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb">Deserialize</a> (grpc_byte_buffer *buf, int max_message_size)=0</td></tr>
+<tr class="separator:af2bc8b34d88cc5d355755ec94bf04bcb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="af2bc8b34d88cc5d355755ec94bf04bcb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::CallOpGenericRecvMessageHelper::DeserializeFunc::Deserialize </td>
+ <td>(</td>
+ <td class="paramtype">grpc_byte_buffer *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html b/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html
new file mode 100644
index 0000000000..84ff247129
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html
@@ -0,0 +1,183 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html">CallOpGenericRecvMessageHelper</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">DeserializeFuncType</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae14165824fb892eefb683da1405e0316"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316">DeserializeFuncType</a> (R *message)</td></tr>
+<tr class="separator:ae14165824fb892eefb683da1405e0316"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aff7b6d6d9e51e6d0bdb3a150bc5f99d4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4">Deserialize</a> (grpc_byte_buffer *buf, int max_message_size) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:aff7b6d6d9e51e6d0bdb3a150bc5f99d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ae14165824fb892eefb683da1405e0316"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType</a>&lt; R &gt;::<a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">DeserializeFuncType</a> </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>message</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aff7b6d6d9e51e6d0bdb3a150bc5f99d4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType</a>&lt; R &gt;::Deserialize </td>
+ <td>(</td>
+ <td class="paramtype">grpc_byte_buffer *&#160;</td>
+ <td class="paramname"><em>buf</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_recv_initial_metadata.html b/doc/ref/c++/html/classgrpc_1_1_call_op_recv_initial_metadata.html
new file mode 100644
index 0000000000..a414064782
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_recv_initial_metadata.html
@@ -0,0 +1,242 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpRecvInitialMetadata Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpRecvInitialMetadata Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a6c99b156711d0dc093a8578b45901cd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8">CallOpRecvInitialMetadata</a> ()</td></tr>
+<tr class="separator:a6c99b156711d0dc093a8578b45901cd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4dcc9f22c6966baca69cb1935c823a8e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e">RecvInitialMetadata</a> (<a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context)</td></tr>
+<tr class="separator:a4dcc9f22c6966baca69cb1935c823a8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a4f1684c4b023b4e2d348e53f80797f74"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:a4f1684c4b023b4e2d348e53f80797f74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85e4703487b89a0557d82237ed4a74eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:a85e4703487b89a0557d82237ed4a74eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a6c99b156711d0dc093a8578b45901cd8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpRecvInitialMetadata::CallOpRecvInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a4f1684c4b023b4e2d348e53f80797f74"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpRecvInitialMetadata::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85e4703487b89a0557d82237ed4a74eb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpRecvInitialMetadata::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4dcc9f22c6966baca69cb1935c823a8e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpRecvInitialMetadata::RecvInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_recv_message.html b/doc/ref/c++/html/classgrpc_1_1_call_op_recv_message.html
new file mode 100644
index 0000000000..65e392c880
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_recv_message.html
@@ -0,0 +1,271 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpRecvMessage&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_recv_message.html">CallOpRecvMessage</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Data Fields</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpRecvMessage&lt; R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a5f2ead0399f19a906b82f87a82f24253"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253">CallOpRecvMessage</a> ()</td></tr>
+<tr class="separator:a5f2ead0399f19a906b82f87a82f24253"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa2bdc2952010ab3a017bb859a1c6161c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c">RecvMessage</a> (R *message)</td></tr>
+<tr class="separator:aa2bdc2952010ab3a017bb859a1c6161c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a95f94e74f704a7f40e1f2e30aba24c57"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">got_message</a></td></tr>
+<tr class="separator:a95f94e74f704a7f40e1f2e30aba24c57"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a2d939fbfc75732244f389a5e2b97ab0a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:a2d939fbfc75732244f389a5e2b97ab0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac235a695ea9beb6d4ff3f4f220f695c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:ac235a695ea9beb6d4ff3f4f220f695c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a5f2ead0399f19a906b82f87a82f24253"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage</a>&lt; R &gt;::<a class="el" href="classgrpc_1_1_call_op_recv_message.html">CallOpRecvMessage</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2d939fbfc75732244f389a5e2b97ab0a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage</a>&lt; R &gt;::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac235a695ea9beb6d4ff3f4f220f695c6"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage</a>&lt; R &gt;::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa2bdc2952010ab3a017bb859a1c6161c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage</a>&lt; R &gt;::RecvMessage </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>message</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a95f94e74f704a7f40e1f2e30aba24c57"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage</a>&lt; R &gt;::got_message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_send_initial_metadata.html b/doc/ref/c++/html/classgrpc_1_1_call_op_send_initial_metadata.html
new file mode 100644
index 0000000000..2aaaefbf70
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_send_initial_metadata.html
@@ -0,0 +1,313 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpSendInitialMetadata Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpSendInitialMetadata Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1cf749118f03392e186d251c48200dd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8">CallOpSendInitialMetadata</a> ()</td></tr>
+<tr class="separator:a1cf749118f03392e186d251c48200dd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1d7682714b83f3bf495be8a7804fd34d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d">SendInitialMetadata</a> (const std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;metadata)</td></tr>
+<tr class="separator:a1d7682714b83f3bf495be8a7804fd34d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:ac57cf7a43da437b8b4556839f0403a77"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:ac57cf7a43da437b8b4556839f0403a77"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a70bd2ec3f8b7b95b02657902ee445a13"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:a70bd2ec3f8b7b95b02657902ee445a13"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a2e867bf1e2a14f51fbda7ffe4a9d0e30"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">send_</a></td></tr>
+<tr class="separator:a2e867bf1e2a14f51fbda7ffe4a9d0e30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a19f3366cf32ceb0199e7f636f870dd63"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63">initial_metadata_count_</a></td></tr>
+<tr class="separator:a19f3366cf32ceb0199e7f636f870dd63"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a032d474971352a0f3ca5b1a468fa5fd4"><td class="memItemLeft" align="right" valign="top">grpc_metadata *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">initial_metadata_</a></td></tr>
+<tr class="separator:a032d474971352a0f3ca5b1a468fa5fd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a1cf749118f03392e186d251c48200dd8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpSendInitialMetadata::CallOpSendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ac57cf7a43da437b8b4556839f0403a77"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpSendInitialMetadata::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a70bd2ec3f8b7b95b02657902ee445a13"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpSendInitialMetadata::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1d7682714b83f3bf495be8a7804fd34d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpSendInitialMetadata::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">const std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>metadata</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a032d474971352a0f3ca5b1a468fa5fd4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_metadata* grpc::CallOpSendInitialMetadata::initial_metadata_</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a19f3366cf32ceb0199e7f636f870dd63"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc::CallOpSendInitialMetadata::initial_metadata_count_</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2e867bf1e2a14f51fbda7ffe4a9d0e30"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::CallOpSendInitialMetadata::send_</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_send_message.html b/doc/ref/c++/html/classgrpc_1_1_call_op_send_message.html
new file mode 100644
index 0000000000..7c0b768f28
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_send_message.html
@@ -0,0 +1,272 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpSendMessage Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpSendMessage Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a049e460b94bad04d19e3fbe70ba43291"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291">CallOpSendMessage</a> ()</td></tr>
+<tr class="separator:a049e460b94bad04d19e3fbe70ba43291"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3cf3a795e98b7db1488ba6c098ac7dd9"><td class="memTemplParams" colspan="2">template&lt;class M &gt; </td></tr>
+<tr class="memitem:a3cf3a795e98b7db1488ba6c098ac7dd9"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">SendMessage</a> (const M &amp;message, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options) GRPC_MUST_USE_RESULT</td></tr>
+<tr class="memdesc:a3cf3a795e98b7db1488ba6c098ac7dd9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Send <em>message</em> using <em>options</em> for the write. <a href="#a3cf3a795e98b7db1488ba6c098ac7dd9">More...</a><br/></td></tr>
+<tr class="separator:a3cf3a795e98b7db1488ba6c098ac7dd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9928eeba69f23f54d1c378517a15222"><td class="memTemplParams" colspan="2">template&lt;class M &gt; </td></tr>
+<tr class="memitem:ad9928eeba69f23f54d1c378517a15222"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_message.html#ad9928eeba69f23f54d1c378517a15222">SendMessage</a> (const M &amp;message) GRPC_MUST_USE_RESULT</td></tr>
+<tr class="separator:ad9928eeba69f23f54d1c378517a15222"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a5d19fd3ab26c2b54868c9006f374728e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:a5d19fd3ab26c2b54868c9006f374728e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a214a005bed5dd03d6dfa16f7a28b205b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:a214a005bed5dd03d6dfa16f7a28b205b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a049e460b94bad04d19e3fbe70ba43291"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpSendMessage::CallOpSendMessage </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a5d19fd3ab26c2b54868c9006f374728e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpSendMessage::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a214a005bed5dd03d6dfa16f7a28b205b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpSendMessage::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3cf3a795e98b7db1488ba6c098ac7dd9"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class M &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::CallOpSendMessage::SendMessage </td>
+ <td>(</td>
+ <td class="paramtype">const M &amp;&#160;</td>
+ <td class="paramname"><em>message</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>options</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+<p>Send <em>message</em> using <em>options</em> for the write. </p>
+<p>The <em>options</em> are cleared after use. </p>
+
+</div>
+</div>
+<a class="anchor" id="ad9928eeba69f23f54d1c378517a15222"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class M &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::CallOpSendMessage::SendMessage </td>
+ <td>(</td>
+ <td class="paramtype">const M &amp;&#160;</td>
+ <td class="paramname"><em>message</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_server_send_status.html b/doc/ref/c++/html/classgrpc_1_1_call_op_server_send_status.html
new file mode 100644
index 0000000000..5496c64df3
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_server_send_status.html
@@ -0,0 +1,252 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpServerSendStatus Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html">CallOpServerSendStatus</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpServerSendStatus Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ab7a24493e9b8c6f2cc122cf3bd7796e4"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4">CallOpServerSendStatus</a> ()</td></tr>
+<tr class="separator:ab7a24493e9b8c6f2cc122cf3bd7796e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2720fa707f1fe321afdf3a971bebcf7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7">ServerSendStatus</a> (const std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;trailing_metadata, const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;status)</td></tr>
+<tr class="separator:ac2720fa707f1fe321afdf3a971bebcf7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:a7381b06ae0268853ebf9ed3b2737698b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b">AddOp</a> (grpc_op *ops, size_t *nops)</td></tr>
+<tr class="separator:a7381b06ae0268853ebf9ed3b2737698b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91b57e7b08540afa237cf7621558c978"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978">FinishOp</a> (bool *status, int max_message_size)</td></tr>
+<tr class="separator:a91b57e7b08540afa237cf7621558c978"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ab7a24493e9b8c6f2cc122cf3bd7796e4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpServerSendStatus::CallOpServerSendStatus </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a7381b06ae0268853ebf9ed3b2737698b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpServerSendStatus::AddOp </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a91b57e7b08540afa237cf7621558c978"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpServerSendStatus::FinishOp </td>
+ <td>(</td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac2720fa707f1fe321afdf3a971bebcf7"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpServerSendStatus::ServerSendStatus </td>
+ <td>(</td>
+ <td class="paramtype">const std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>trailing_metadata</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_set.html b/doc/ref/c++/html/classgrpc_1_1_call_op_set.html
new file mode 100644
index 0000000000..b69add7f05
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_set.html
@@ -0,0 +1,278 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_set.html">CallOpSet</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a>.
+ <a href="classgrpc_1_1_call_op_set.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae06e1a2d051b6b404eec88c4be303bcf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf">CallOpSet</a> ()</td></tr>
+<tr class="separator:ae06e1a2d051b6b404eec88c4be303bcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a886b55145cdad0994ec589b4f4c7df9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">FillOps</a> (grpc_op *ops, size_t *nops) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="memdesc:a886b55145cdad0994ec589b4f4c7df9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fills in grpc_op, starting from ops[*nops] and moving upwards. <a href="#a886b55145cdad0994ec589b4f4c7df9c">More...</a><br/></td></tr>
+<tr class="separator:a886b55145cdad0994ec589b4f4c7df9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66575110fdb84b974182154a01464180"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">FinalizeResult</a> (void **tag, bool *status) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a66575110fdb84b974182154a01464180"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a798d253af317730a5b996a4a55d86274"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274">set_output_tag</a> (void *return_tag)</td></tr>
+<tr class="separator:a798d253af317730a5b996a4a55d86274"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_call_op_set_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_call_op_set_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_call_op_set_interface.html">grpc::CallOpSetInterface</a></td></tr>
+<tr class="memitem:ad331a10c0fd65f5a9db680e95682f000 inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000">CallOpSetInterface</a> ()</td></tr>
+<tr class="separator:ad331a10c0fd65f5a9db680e95682f000 inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1e3a95ce9a1727011b7e7ce76829f0a inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a">set_max_message_size</a> (int max_message_size)</td></tr>
+<tr class="separator:ac1e3a95ce9a1727011b7e7ce76829f0a inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_completion_queue_tag"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_completion_queue_tag')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_completion_queue_tag.html">grpc::CompletionQueueTag</a></td></tr>
+<tr class="memitem:a2cbf0212ed795c79f98c3421ed0cb4ab inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">~CompletionQueueTag</a> ()</td></tr>
+<tr class="separator:a2cbf0212ed795c79f98c3421ed0cb4ab inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classgrpc_1_1_call_op_set_interface"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classgrpc_1_1_call_op_set_interface')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classgrpc_1_1_call_op_set_interface.html">grpc::CallOpSetInterface</a></td></tr>
+<tr class="memitem:a06354e63efdbbd34fa18270490aaabbf inherit pro_attribs_classgrpc_1_1_call_op_set_interface"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a></td></tr>
+<tr class="separator:a06354e63efdbbd34fa18270490aaabbf inherit pro_attribs_classgrpc_1_1_call_op_set_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;class Op1 = CallNoOp&lt;1&gt;, class Op2 = CallNoOp&lt;2&gt;, class Op3 = CallNoOp&lt;3&gt;, class Op4 = CallNoOp&lt;4&gt;, class Op5 = CallNoOp&lt;5&gt;, class Op6 = CallNoOp&lt;6&gt;&gt;<br/>
+class grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</h3>
+
+<p>Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a>. </p>
+<p>Since we cannot use variadic templates, we declare slots up to the maximum count of ops we'll need in a set. We leverage the empty base class optimization to slim this class (especially when there are many unused slots used). To avoid duplicate base classes, the template parmeter for <a class="el" href="classgrpc_1_1_call_no_op.html" title="Default argument for CallOpSet. ">CallNoOp</a> is varied by argument position. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ae06e1a2d051b6b404eec88c4be303bcf"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Op1 = CallNoOp&lt;1&gt;, class Op2 = CallNoOp&lt;2&gt;, class Op3 = CallNoOp&lt;3&gt;, class Op4 = CallNoOp&lt;4&gt;, class Op5 = CallNoOp&lt;5&gt;, class Op6 = CallNoOp&lt;6&gt;&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a>&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;::<a class="el" href="classgrpc_1_1_call_op_set.html">CallOpSet</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a886b55145cdad0994ec589b4f4c7df9c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Op1 = CallNoOp&lt;1&gt;, class Op2 = CallNoOp&lt;2&gt;, class Op3 = CallNoOp&lt;3&gt;, class Op4 = CallNoOp&lt;4&gt;, class Op5 = CallNoOp&lt;5&gt;, class Op6 = CallNoOp&lt;6&gt;&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a>&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;::FillOps </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Fills in grpc_op, starting from ops[*nops] and moving upwards. </p>
+
+<p>Implements <a class="el" href="classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874">grpc::CallOpSetInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a66575110fdb84b974182154a01464180"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Op1 = CallNoOp&lt;1&gt;, class Op2 = CallNoOp&lt;2&gt;, class Op3 = CallNoOp&lt;3&gt;, class Op4 = CallNoOp&lt;4&gt;, class Op5 = CallNoOp&lt;5&gt;, class Op6 = CallNoOp&lt;6&gt;&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a>&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;::FinalizeResult </td>
+ <td>(</td>
+ <td class="paramtype">void **&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d">grpc::CompletionQueueTag</a>.</p>
+
+<p>Reimplemented in <a class="el" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>, and <a class="el" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">grpc::SneakyCallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a798d253af317730a5b996a4a55d86274"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Op1 = CallNoOp&lt;1&gt;, class Op2 = CallNoOp&lt;2&gt;, class Op3 = CallNoOp&lt;3&gt;, class Op4 = CallNoOp&lt;4&gt;, class Op5 = CallNoOp&lt;5&gt;, class Op6 = CallNoOp&lt;6&gt;&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a>&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;::set_output_tag </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>return_tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_call_op_set_interface.html b/doc/ref/c++/html/classgrpc_1_1_call_op_set_interface.html
new file mode 100644
index 0000000000..ef9c0e7e71
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_call_op_set_interface.html
@@ -0,0 +1,244 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpSetInterface Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-attribs">Protected Attributes</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpSetInterface Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the lower layers, and as it is-a <a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>, also massages the final completion into the correct form for consumption in the C++ API.
+ <a href="classgrpc_1_1_call_op_set_interface.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad331a10c0fd65f5a9db680e95682f000"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000">CallOpSetInterface</a> ()</td></tr>
+<tr class="separator:ad331a10c0fd65f5a9db680e95682f000"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae0c95dfc28fc2a0add3e3bec1a703874"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874">FillOps</a> (grpc_op *ops, size_t *nops)=0</td></tr>
+<tr class="memdesc:ae0c95dfc28fc2a0add3e3bec1a703874"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fills in grpc_op, starting from ops[*nops] and moving upwards. <a href="#ae0c95dfc28fc2a0add3e3bec1a703874">More...</a><br/></td></tr>
+<tr class="separator:ae0c95dfc28fc2a0add3e3bec1a703874"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1e3a95ce9a1727011b7e7ce76829f0a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a">set_max_message_size</a> (int max_message_size)</td></tr>
+<tr class="separator:ac1e3a95ce9a1727011b7e7ce76829f0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_completion_queue_tag"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_completion_queue_tag')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_completion_queue_tag.html">grpc::CompletionQueueTag</a></td></tr>
+<tr class="memitem:a2cbf0212ed795c79f98c3421ed0cb4ab inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">~CompletionQueueTag</a> ()</td></tr>
+<tr class="separator:a2cbf0212ed795c79f98c3421ed0cb4ab inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7b1abfcd9e506d118dfdcf29ce7fe8d inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d">FinalizeResult</a> (void **tag, bool *status)=0</td></tr>
+<tr class="separator:af7b1abfcd9e506d118dfdcf29ce7fe8d inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-attribs"></a>
+Protected Attributes</h2></td></tr>
+<tr class="memitem:a06354e63efdbbd34fa18270490aaabbf"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a></td></tr>
+<tr class="separator:a06354e63efdbbd34fa18270490aaabbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the lower layers, and as it is-a <a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>, also massages the final completion into the correct form for consumption in the C++ API. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ad331a10c0fd65f5a9db680e95682f000"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CallOpSetInterface::CallOpSetInterface </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae0c95dfc28fc2a0add3e3bec1a703874"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void grpc::CallOpSetInterface::FillOps </td>
+ <td>(</td>
+ <td class="paramtype">grpc_op *&#160;</td>
+ <td class="paramname"><em>ops</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">size_t *&#160;</td>
+ <td class="paramname"><em>nops</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Fills in grpc_op, starting from ops[*nops] and moving upwards. </p>
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a>, and <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ac1e3a95ce9a1727011b7e7ce76829f0a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CallOpSetInterface::set_max_message_size </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a06354e63efdbbd34fa18270490aaabbf"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc::CallOpSetInterface::max_message_size_</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_channel_arguments.html b/doc/ref/c++/html/classgrpc_1_1_channel_arguments.html
new file mode 100644
index 0000000000..1dfb397f55
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_channel_arguments.html
@@ -0,0 +1,386 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ChannelArguments Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ChannelArguments Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel__arguments_8h_source.html">channel_arguments.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aecabf1ea1c78a3202544571cf857e8eb"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb">ChannelArguments</a> ()</td></tr>
+<tr class="separator:aecabf1ea1c78a3202544571cf857e8eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8058adf243855c3a44030c23ccec05ad"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad">~ChannelArguments</a> ()</td></tr>
+<tr class="separator:a8058adf243855c3a44030c23ccec05ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade11dfb5cac0e1da5e9ed5e86c18c4fe"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#ade11dfb5cac0e1da5e9ed5e86c18c4fe">ChannelArguments</a> (const <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;other)</td></tr>
+<tr class="separator:ade11dfb5cac0e1da5e9ed5e86c18c4fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac75ba90de32a5c7f3cb6c62f7ce649be"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be">operator=</a> (<a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> other)</td></tr>
+<tr class="separator:ac75ba90de32a5c7f3cb6c62f7ce649be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3ff4f22c2cf31c01885b2aaefbdd227d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d">Swap</a> (<a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;other)</td></tr>
+<tr class="separator:a3ff4f22c2cf31c01885b2aaefbdd227d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af4182e659448184f9618f079a1570328"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#af4182e659448184f9618f079a1570328">SetSslTargetNameOverride</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;name)</td></tr>
+<tr class="separator:af4182e659448184f9618f079a1570328"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf332071bbdff5e4a7f3352f4ad564d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#aaf332071bbdff5e4a7f3352f4ad564d5">SetCompressionAlgorithm</a> (grpc_compression_algorithm algorithm)</td></tr>
+<tr class="separator:aaf332071bbdff5e4a7f3352f4ad564d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b1c60568a4906bfe0b21781b09cdbbf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#a2b1c60568a4906bfe0b21781b09cdbbf">SetInt</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;key, int value)</td></tr>
+<tr class="separator:a2b1c60568a4906bfe0b21781b09cdbbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a852ac2fe0ac7421fa82927ddda612947"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#a852ac2fe0ac7421fa82927ddda612947">SetString</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;value)</td></tr>
+<tr class="separator:a852ac2fe0ac7421fa82927ddda612947"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a90ce1857947d36ff894402ad10cb6048"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#a90ce1857947d36ff894402ad10cb6048">SetChannelArgs</a> (grpc_channel_args *channel_args) const </td></tr>
+<tr class="separator:a90ce1857947d36ff894402ad10cb6048"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ae60893d904f922c32a57fb18e618db66"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66">SecureCredentials</a></td></tr>
+<tr class="separator:ae60893d904f922c32a57fb18e618db66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab9fc942609a77bb3021ba172be262c7b"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b">testing::ChannelArgumentsTest</a></td></tr>
+<tr class="separator:ab9fc942609a77bb3021ba172be262c7b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aecabf1ea1c78a3202544571cf857e8eb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ChannelArguments::ChannelArguments </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8058adf243855c3a44030c23ccec05ad"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ChannelArguments::~ChannelArguments </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ade11dfb5cac0e1da5e9ed5e86c18c4fe"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ChannelArguments::ChannelArguments </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;&#160;</td>
+ <td class="paramname"><em>other</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ac75ba90de32a5c7f3cb6c62f7ce649be"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a>&amp; grpc::ChannelArguments::operator= </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a>&#160;</td>
+ <td class="paramname"><em>other</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a90ce1857947d36ff894402ad10cb6048"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ChannelArguments::SetChannelArgs </td>
+ <td>(</td>
+ <td class="paramtype">grpc_channel_args *&#160;</td>
+ <td class="paramname"><em>channel_args</em></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aaf332071bbdff5e4a7f3352f4ad564d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ChannelArguments::SetCompressionAlgorithm </td>
+ <td>(</td>
+ <td class="paramtype">grpc_compression_algorithm&#160;</td>
+ <td class="paramname"><em>algorithm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2b1c60568a4906bfe0b21781b09cdbbf"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ChannelArguments::SetInt </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af4182e659448184f9618f079a1570328"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ChannelArguments::SetSslTargetNameOverride </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>name</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a852ac2fe0ac7421fa82927ddda612947"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ChannelArguments::SetString </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3ff4f22c2cf31c01885b2aaefbdd227d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ChannelArguments::Swap </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;&#160;</td>
+ <td class="paramname"><em>other</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ae60893d904f922c32a57fb18e618db66"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class SecureCredentials</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab9fc942609a77bb3021ba172be262c7b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class testing::ChannelArgumentsTest</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="channel__arguments_8h_source.html">channel_arguments.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_channel_interface.html b/doc/ref/c++/html/classgrpc_1_1_channel_interface.html
new file mode 100644
index 0000000000..d4806625ed
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_channel_interface.html
@@ -0,0 +1,213 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ChannelInterface Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ChannelInterface Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="channel__interface_8h_source.html">channel_interface.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a3f5145d4778aa952540dc9983cefe13f"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f">~ChannelInterface</a> ()</td></tr>
+<tr class="separator:a3f5145d4778aa952540dc9983cefe13f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a267926300784051328390b2f7648c99f"><td class="memItemLeft" align="right" valign="top">virtual void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_interface.html#a267926300784051328390b2f7648c99f">RegisterMethod</a> (const char *method_name)=0</td></tr>
+<tr class="separator:a267926300784051328390b2f7648c99f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fd365d30961e8e40805a3c8faf276d0"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_call.html">Call</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0">CreateCall</a> (const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *cq)=0</td></tr>
+<tr class="separator:a9fd365d30961e8e40805a3c8faf276d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_call_hook"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_call_hook')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_call_hook.html">grpc::CallHook</a></td></tr>
+<tr class="memitem:a4aa1cf199f80f6475c6da0ad679c5d9d inherit pub_methods_classgrpc_1_1_call_hook"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d">~CallHook</a> ()</td></tr>
+<tr class="separator:a4aa1cf199f80f6475c6da0ad679c5d9d inherit pub_methods_classgrpc_1_1_call_hook"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:acf08b6dd7d1faba4efeeb4937bc81d29 inherit pub_methods_classgrpc_1_1_call_hook"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29">PerformOpsOnCall</a> (<a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a> *ops, <a class="el" href="classgrpc_1_1_call.html">Call</a> *call)=0</td></tr>
+<tr class="separator:acf08b6dd7d1faba4efeeb4937bc81d29 inherit pub_methods_classgrpc_1_1_call_hook"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a3f5145d4778aa952540dc9983cefe13f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::ChannelInterface::~ChannelInterface </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a9fd365d30961e8e40805a3c8faf276d0"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_call.html">Call</a> grpc::ChannelInterface::CreateCall </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a267926300784051328390b2f7648c99f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void* grpc::ChannelInterface::RegisterMethod </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>method_name</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="channel__interface_8h_source.html">channel_interface.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_reader.html b/doc/ref/c++/html/classgrpc_1_1_client_async_reader.html
new file mode 100644
index 0000000000..913fc0854c
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_reader.html
@@ -0,0 +1,297 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncReader&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_reader.html">ClientAsyncReader</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncReader&lt; R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client__context_8h_source.html">client_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa14e3bc04d9852009f8b3094ce0d3ed4"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:aa14e3bc04d9852009f8b3094ce0d3ed4"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4">ClientAsyncReader</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *cq, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const W &amp;request, void *tag)</td></tr>
+<tr class="separator:aa14e3bc04d9852009f8b3094ce0d3ed4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e5b71e2620dc95fe41305eef7ee7863"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863">ReadInitialMetadata</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a0e5b71e2620dc95fe41305eef7ee7863"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaf9f76ba76be0a0144bbdf44d740731d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d">Read</a> (R *msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:aaf9f76ba76be0a0144bbdf44d740731d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91bfabf65e2dc955b6983bc0ece5a73f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f">Finish</a> (<a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a91bfabf65e2dc955b6983bc0ece5a73f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
+<tr class="separator:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aa14e3bc04d9852009f8b3094ce0d3ed4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader</a>&lt; R &gt;::<a class="el" href="classgrpc_1_1_client_async_reader.html">ClientAsyncReader</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a91bfabf65e2dc955b6983bc0ece5a73f"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader</a>&lt; R &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">grpc::ClientAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="aaf9f76ba76be0a0144bbdf44d740731d"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader</a>&lt; R &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">grpc::AsyncReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a0e5b71e2620dc95fe41305eef7ee7863"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader</a>&lt; R &gt;::ReadInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">grpc::ClientAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="client__context_8h_source.html">client_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_reader_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_async_reader_interface.html
new file mode 100644
index 0000000000..43bb272e30
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_reader_interface.html
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncReaderInterface&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_reader_interface.html">ClientAsyncReaderInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncReaderInterface&lt; R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad83bfe2febf4a6296b7d2646799b8174 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">ReadInitialMetadata</a> (void *tag)=0</td></tr>
+<tr class="separator:ad83bfe2febf4a6296b7d2646799b8174 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc1cfbd1514fea47088bc837bb578a24 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">Finish</a> (<a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag)=0</td></tr>
+<tr class="separator:afc1cfbd1514fea47088bc837bb578a24 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
+<tr class="separator:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa644cf63c12ae8c9d5fda16a361f8a11 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">Read</a> (R *msg, void *tag)=0</td></tr>
+<tr class="separator:aa644cf63c12ae8c9d5fda16a361f8a11 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer.html b/doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer.html
new file mode 100644
index 0000000000..1cfe1c0301
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer.html
@@ -0,0 +1,361 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncReaderWriter&lt; R, W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncReaderWriter&lt; R, W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client__context_8h_source.html">client_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae0595a950e2917399bbcef7e70e06066"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066">ClientAsyncReaderWriter</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *cq, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, void *tag)</td></tr>
+<tr class="separator:ae0595a950e2917399bbcef7e70e06066"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69f0115acf443d7820adefc7b2a6f162"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162">ReadInitialMetadata</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a69f0115acf443d7820adefc7b2a6f162"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b6a32ede877fc2d5d4cfc5b95ac163f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f">Read</a> (R *msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a8b6a32ede877fc2d5d4cfc5b95ac163f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac3cb288c3bd9d1b826fd726bd2655be3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3">Write</a> (const W &amp;msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ac3cb288c3bd9d1b826fd726bd2655be3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae431aa00a64f2685b60ec853334e6637"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637">WritesDone</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ae431aa00a64f2685b60ec853334e6637"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4316a3e8d1b4d148a695c8afa240ea23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23">Finish</a> (<a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a4316a3e8d1b4d148a695c8afa240ea23"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a> ()</td></tr>
+<tr class="separator:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
+<tr class="separator:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ae0595a950e2917399bbcef7e70e06066"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a>&lt; R, W &gt;::<a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a4316a3e8d1b4d148a695c8afa240ea23"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a>&lt; R, W &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">grpc::ClientAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a8b6a32ede877fc2d5d4cfc5b95ac163f"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a>&lt; R, W &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">grpc::AsyncReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a69f0115acf443d7820adefc7b2a6f162"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a>&lt; R, W &gt;::ReadInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">grpc::ClientAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ac3cb288c3bd9d1b826fd726bd2655be3"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a>&lt; R, W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">grpc::AsyncWriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ae431aa00a64f2685b60ec853334e6637"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a>&lt; R, W &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="client__context_8h_source.html">client_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer_interface.html
new file mode 100644
index 0000000000..4670108288
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_reader_writer_interface.html
@@ -0,0 +1,161 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html">ClientAsyncReaderWriterInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a878193880df68ab969b697f1fcd7dbc3"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3">WritesDone</a> (void *tag)=0</td></tr>
+<tr class="separator:a878193880df68ab969b697f1fcd7dbc3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad83bfe2febf4a6296b7d2646799b8174 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">ReadInitialMetadata</a> (void *tag)=0</td></tr>
+<tr class="separator:ad83bfe2febf4a6296b7d2646799b8174 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc1cfbd1514fea47088bc837bb578a24 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">Finish</a> (<a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag)=0</td></tr>
+<tr class="separator:afc1cfbd1514fea47088bc837bb578a24 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a> ()</td></tr>
+<tr class="separator:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40c1091ac5cb5243c874da725ae291b4 inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">Write</a> (const W &amp;msg, void *tag)=0</td></tr>
+<tr class="separator:a40c1091ac5cb5243c874da725ae291b4 inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
+<tr class="separator:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa644cf63c12ae8c9d5fda16a361f8a11 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">Read</a> (R *msg, void *tag)=0</td></tr>
+<tr class="separator:aa644cf63c12ae8c9d5fda16a361f8a11 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a878193880df68ab969b697f1fcd7dbc3"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html">grpc::ClientAsyncReaderWriterInterface</a>&lt; W, R &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_response_reader.html b/doc/ref/c++/html/classgrpc_1_1_client_async_response_reader.html
new file mode 100644
index 0000000000..30d878dc45
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_response_reader.html
@@ -0,0 +1,253 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncResponseReader&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncResponseReader&lt; R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="async__unary__call_8h_source.html">async_unary_call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a4868e0f82053062c95fea7bd197acadf"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:a4868e0f82053062c95fea7bd197acadf"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf">ClientAsyncResponseReader</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *cq, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const W &amp;request)</td></tr>
+<tr class="separator:a4868e0f82053062c95fea7bd197acadf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a963aefc43f34c9182e265647bbcdb91b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b">ReadInitialMetadata</a> (void *tag)</td></tr>
+<tr class="separator:a963aefc43f34c9182e265647bbcdb91b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a585dc15817999f82a72120a783800830"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830">Finish</a> (R *msg, <a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag)</td></tr>
+<tr class="separator:a585dc15817999f82a72120a783800830"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_async_response_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_async_response_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:aa97dc1ab6a7160a489d2e555102bf5a0 inherit pub_methods_classgrpc_1_1_client_async_response_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0">~ClientAsyncResponseReaderInterface</a> ()</td></tr>
+<tr class="separator:aa97dc1ab6a7160a489d2e555102bf5a0 inherit pub_methods_classgrpc_1_1_client_async_response_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a4868e0f82053062c95fea7bd197acadf"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader</a>&lt; R &gt;::<a class="el" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>request</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a585dc15817999f82a72120a783800830"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader</a>&lt; R &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a963aefc43f34c9182e265647bbcdb91b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader</a>&lt; R &gt;::ReadInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="async__unary__call_8h_source.html">async_unary_call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_response_reader_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_async_response_reader_interface.html
new file mode 100644
index 0000000000..a74ac1ee6c
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_response_reader_interface.html
@@ -0,0 +1,218 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncResponseReaderInterface&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">ClientAsyncResponseReaderInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncResponseReaderInterface&lt; R &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="async__unary__call_8h_source.html">async_unary_call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa97dc1ab6a7160a489d2e555102bf5a0"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0">~ClientAsyncResponseReaderInterface</a> ()</td></tr>
+<tr class="separator:aa97dc1ab6a7160a489d2e555102bf5a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a676e3a03a61c49a82b630d85bbfd366c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c">ReadInitialMetadata</a> (void *tag)=0</td></tr>
+<tr class="separator:a676e3a03a61c49a82b630d85bbfd366c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a379b1d7477431729e01cd48cf6fc78bb"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb">Finish</a> (R *msg, <a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag)=0</td></tr>
+<tr class="separator:a379b1d7477431729e01cd48cf6fc78bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aa97dc1ab6a7160a489d2e555102bf5a0"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">grpc::ClientAsyncResponseReaderInterface</a>&lt; R &gt;::~<a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">ClientAsyncResponseReaderInterface</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a379b1d7477431729e01cd48cf6fc78bb"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">grpc::ClientAsyncResponseReaderInterface</a>&lt; R &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830">grpc::ClientAsyncResponseReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a676e3a03a61c49a82b630d85bbfd366c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">grpc::ClientAsyncResponseReaderInterface</a>&lt; R &gt;::ReadInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b">grpc::ClientAsyncResponseReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="async__unary__call_8h_source.html">async_unary_call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_streaming_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_async_streaming_interface.html
new file mode 100644
index 0000000000..6e4d274449
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_streaming_interface.html
@@ -0,0 +1,206 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncStreamingInterface Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncStreamingInterface Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a103c33e82dbf1715749886c4249f3f28"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:a103c33e82dbf1715749886c4249f3f28"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad83bfe2febf4a6296b7d2646799b8174"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">ReadInitialMetadata</a> (void *tag)=0</td></tr>
+<tr class="separator:ad83bfe2febf4a6296b7d2646799b8174"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc1cfbd1514fea47088bc837bb578a24"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">Finish</a> (<a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag)=0</td></tr>
+<tr class="separator:afc1cfbd1514fea47088bc837bb578a24"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a103c33e82dbf1715749886c4249f3f28"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::ClientAsyncStreamingInterface::~ClientAsyncStreamingInterface </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="afc1cfbd1514fea47088bc837bb578a24"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void grpc::ClientAsyncStreamingInterface::Finish </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b">grpc::ClientAsyncWriter&lt; W &gt;</a>, and <a class="el" href="classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f">grpc::ClientAsyncReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad83bfe2febf4a6296b7d2646799b8174"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void grpc::ClientAsyncStreamingInterface::ReadInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7">grpc::ClientAsyncWriter&lt; W &gt;</a>, and <a class="el" href="classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863">grpc::ClientAsyncReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_writer.html b/doc/ref/c++/html/classgrpc_1_1_client_async_writer.html
new file mode 100644
index 0000000000..2e26fafeec
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_writer.html
@@ -0,0 +1,327 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncWriter&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_writer.html">ClientAsyncWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncWriter&lt; W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client__context_8h_source.html">client_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad4903b1736b423c076bac8e23db345f6"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:ad4903b1736b423c076bac8e23db345f6"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6">ClientAsyncWriter</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *cq, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, R *response, void *tag)</td></tr>
+<tr class="separator:ad4903b1736b423c076bac8e23db345f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1db45c4f5817db4f770c08dab64916c7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7">ReadInitialMetadata</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a1db45c4f5817db4f770c08dab64916c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a544f9e4c310b251bf3c7b84fd035d20a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a">Write</a> (const W &amp;msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a544f9e4c310b251bf3c7b84fd035d20a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af9fbf77049c3e5402913c0edeccf3d47"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47">WritesDone</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:af9fbf77049c3e5402913c0edeccf3d47"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad37af0a7fc27fc90e168fdb90eb52d8b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b">Finish</a> (<a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ad37af0a7fc27fc90e168fdb90eb52d8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a> ()</td></tr>
+<tr class="separator:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ad4903b1736b423c076bac8e23db345f6"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a>&lt; W &gt;::<a class="el" href="classgrpc_1_1_client_async_writer.html">ClientAsyncWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>response</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ad37af0a7fc27fc90e168fdb90eb52d8b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a>&lt; W &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_status.html">Status</a> *&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">grpc::ClientAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a1db45c4f5817db4f770c08dab64916c7"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a>&lt; W &gt;::ReadInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">grpc::ClientAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a544f9e4c310b251bf3c7b84fd035d20a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a>&lt; W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">grpc::AsyncWriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="af9fbf77049c3e5402913c0edeccf3d47"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a>&lt; W &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822">grpc::ClientAsyncWriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="client__context_8h_source.html">client_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_async_writer_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_async_writer_interface.html
new file mode 100644
index 0000000000..cef23bd94d
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_async_writer_interface.html
@@ -0,0 +1,156 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientAsyncWriterInterface&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_async_writer_interface.html">ClientAsyncWriterInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientAsyncWriterInterface&lt; W &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a488d42d85f8e34902401e013572ff822"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822">WritesDone</a> (void *tag)=0</td></tr>
+<tr class="separator:a488d42d85f8e34902401e013572ff822"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:a103c33e82dbf1715749886c4249f3f28 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad83bfe2febf4a6296b7d2646799b8174 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">ReadInitialMetadata</a> (void *tag)=0</td></tr>
+<tr class="separator:ad83bfe2febf4a6296b7d2646799b8174 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc1cfbd1514fea47088bc837bb578a24 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">Finish</a> (<a class="el" href="classgrpc_1_1_status.html">Status</a> *status, void *tag)=0</td></tr>
+<tr class="separator:afc1cfbd1514fea47088bc837bb578a24 inherit pub_methods_classgrpc_1_1_client_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a> ()</td></tr>
+<tr class="separator:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40c1091ac5cb5243c874da725ae291b4 inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">Write</a> (const W &amp;msg, void *tag)=0</td></tr>
+<tr class="separator:a40c1091ac5cb5243c874da725ae291b4 inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a488d42d85f8e34902401e013572ff822"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_client_async_writer_interface.html">grpc::ClientAsyncWriterInterface</a>&lt; W &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47">grpc::ClientAsyncWriter&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_context.html b/doc/ref/c++/html/classgrpc_1_1_client_context.html
new file mode 100644
index 0000000000..87e5a19732
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_context.html
@@ -0,0 +1,809 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientContext Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientContext Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client__context_8h_source.html">client_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:acabbcf3c160a0628da8a9274b10f54b9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9">ClientContext</a> ()</td></tr>
+<tr class="separator:acabbcf3c160a0628da8a9274b10f54b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aeb77ea760faf8f96e775812806c0a3d9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#aeb77ea760faf8f96e775812806c0a3d9">~ClientContext</a> ()</td></tr>
+<tr class="separator:aeb77ea760faf8f96e775812806c0a3d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a69a026f073ef5934697568d689440bd4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a69a026f073ef5934697568d689440bd4">AddMetadata</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;meta_key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;meta_value)</td></tr>
+<tr class="separator:a69a026f073ef5934697568d689440bd4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a971f592cb4c3d4cc4be227c413264d15"><td class="memItemLeft" align="right" valign="top">const std::multimap<br class="typebreak"/>
+&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15">GetServerInitialMetadata</a> ()</td></tr>
+<tr class="separator:a971f592cb4c3d4cc4be227c413264d15"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2ad079046a7f9e6dba922274e11aaa3"><td class="memItemLeft" align="right" valign="top">const std::multimap<br class="typebreak"/>
+&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3">GetServerTrailingMetadata</a> ()</td></tr>
+<tr class="separator:ab2ad079046a7f9e6dba922274e11aaa3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad4e16866fee3f6ee5a10efb5be6f4da6"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:ad4e16866fee3f6ee5a10efb5be6f4da6"><td class="memTemplItemLeft" align="right" valign="top">void&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6">set_deadline</a> (const T &amp;<a class="el" href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e">deadline</a>)</td></tr>
+<tr class="separator:ad4e16866fee3f6ee5a10efb5be6f4da6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af29e0113f661e1fbbecc20c268a3be6e"><td class="memItemLeft" align="right" valign="top">std::chrono::system_clock::time_point&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e">deadline</a> ()</td></tr>
+<tr class="separator:af29e0113f661e1fbbecc20c268a3be6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5057cab6d547678dded90c024efab652"><td class="memItemLeft" align="right" valign="top">gpr_timespec&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652">raw_deadline</a> ()</td></tr>
+<tr class="separator:a5057cab6d547678dded90c024efab652"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43bb17bbd6ab49face3793e8883c5682"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682">set_authority</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;authority)</td></tr>
+<tr class="separator:a43bb17bbd6ab49face3793e8883c5682"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac09d9bcb018a58c970adbab7ecd201cb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb">set_credentials</a> (const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;creds)</td></tr>
+<tr class="separator:ac09d9bcb018a58c970adbab7ecd201cb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91691d52182f45043ce9698424d26a56"><td class="memItemLeft" align="right" valign="top">grpc_compression_algorithm&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56">compression_algorithm</a> () const </td></tr>
+<tr class="separator:a91691d52182f45043ce9698424d26a56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a67a71b32afe1d71189aa3a24146ec61d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a67a71b32afe1d71189aa3a24146ec61d">set_compression_algorithm</a> (grpc_compression_algorithm algorithm)</td></tr>
+<tr class="separator:a67a71b32afe1d71189aa3a24146ec61d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a02f279bf74e26d7c32d0b18dc73dccea"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; const <br class="typebreak"/>
+<a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a02f279bf74e26d7c32d0b18dc73dccea">auth_context</a> () const </td></tr>
+<tr class="separator:a02f279bf74e26d7c32d0b18dc73dccea"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a905d667d96613e022cd83c13dbedb4c3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a905d667d96613e022cd83c13dbedb4c3">peer</a> () const </td></tr>
+<tr class="separator:a905d667d96613e022cd83c13dbedb4c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a48672c1e42084d2cd6975746b84658dd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd">set_census_context</a> (struct <a class="el" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">census_context</a> *ccp)</td></tr>
+<tr class="separator:a48672c1e42084d2cd6975746b84658dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a958acd964fe9feb32bca775c96ad5117"><td class="memItemLeft" align="right" valign="top">struct census_context *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">census_context</a> () const </td></tr>
+<tr class="separator:a958acd964fe9feb32bca775c96ad5117"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abd0f6715c30287b75288015eee628984"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#abd0f6715c30287b75288015eee628984">TryCancel</a> ()</td></tr>
+<tr class="separator:abd0f6715c30287b75288015eee628984"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:aa7c3f046b48d55b5a82cbee3fd84faa2"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#aa7c3f046b48d55b5a82cbee3fd84faa2">CallOpClientRecvStatus</a></td></tr>
+<tr class="separator:aa7c3f046b48d55b5a82cbee3fd84faa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a94ad025954d211da7d27efa58cb2ea91"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a94ad025954d211da7d27efa58cb2ea91">CallOpRecvInitialMetadata</a></td></tr>
+<tr class="separator:a94ad025954d211da7d27efa58cb2ea91"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac47342240f21ce36f47485e4ab41a10d"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d">Channel</a></td></tr>
+<tr class="separator:ac47342240f21ce36f47485e4ab41a10d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade499098cc91745c1c87147d7a7fb7bf"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:ade499098cc91745c1c87147d7a7fb7bf"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#ade499098cc91745c1c87147d7a7fb7bf">::grpc::ClientReader</a></td></tr>
+<tr class="separator:ade499098cc91745c1c87147d7a7fb7bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4498fada67d531d99a8642f47d746544"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:a4498fada67d531d99a8642f47d746544"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a4498fada67d531d99a8642f47d746544">::grpc::ClientWriter</a></td></tr>
+<tr class="separator:a4498fada67d531d99a8642f47d746544"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d5659aa24edba057895be774e2752ec"><td class="memTemplParams" colspan="2">template&lt;class R , class W &gt; </td></tr>
+<tr class="memitem:a6d5659aa24edba057895be774e2752ec"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a6d5659aa24edba057895be774e2752ec">::grpc::ClientReaderWriter</a></td></tr>
+<tr class="separator:a6d5659aa24edba057895be774e2752ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af5343062a44a5633b144751e59969237"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:af5343062a44a5633b144751e59969237"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#af5343062a44a5633b144751e59969237">::grpc::ClientAsyncReader</a></td></tr>
+<tr class="separator:af5343062a44a5633b144751e59969237"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3547958eadfaeb18692865bd73999ad"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:af3547958eadfaeb18692865bd73999ad"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#af3547958eadfaeb18692865bd73999ad">::grpc::ClientAsyncWriter</a></td></tr>
+<tr class="separator:af3547958eadfaeb18692865bd73999ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c0c96957129933bfe94a299c764eaa7"><td class="memTemplParams" colspan="2">template&lt;class R , class W &gt; </td></tr>
+<tr class="memitem:a5c0c96957129933bfe94a299c764eaa7"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a5c0c96957129933bfe94a299c764eaa7">::grpc::ClientAsyncReaderWriter</a></td></tr>
+<tr class="separator:a5c0c96957129933bfe94a299c764eaa7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4b00162a9bd86e07669f2af67f85c73a"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:a4b00162a9bd86e07669f2af67f85c73a"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a4b00162a9bd86e07669f2af67f85c73a">::grpc::ClientAsyncResponseReader</a></td></tr>
+<tr class="separator:a4b00162a9bd86e07669f2af67f85c73a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4aac0a120f3498d1151460ef89ce8446"><td class="memTemplParams" colspan="2">template&lt;class InputMessage , class OutputMessage &gt; </td></tr>
+<tr class="memitem:a4aac0a120f3498d1151460ef89ce8446"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html#a4aac0a120f3498d1151460ef89ce8446">BlockingUnaryCall</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const InputMessage &amp;request, OutputMessage *result)</td></tr>
+<tr class="separator:a4aac0a120f3498d1151460ef89ce8446"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="acabbcf3c160a0628da8a9274b10f54b9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ClientContext::ClientContext </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aeb77ea760faf8f96e775812806c0a3d9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ClientContext::~ClientContext </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a69a026f073ef5934697568d689440bd4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ClientContext::AddMetadata </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>meta_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>meta_value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a02f279bf74e26d7c32d0b18dc73dccea"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;const <a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a>&gt; grpc::ClientContext::auth_context </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a958acd964fe9feb32bca775c96ad5117"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">struct census_context* grpc::ClientContext::census_context </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a91691d52182f45043ce9698424d26a56"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_compression_algorithm grpc::ClientContext::compression_algorithm </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af29e0113f661e1fbbecc20c268a3be6e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::chrono::system_clock::time_point grpc::ClientContext::deadline </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a971f592cb4c3d4cc4be227c413264d15"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const std::multimap&lt;<a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&gt;&amp; grpc::ClientContext::GetServerInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2ad079046a7f9e6dba922274e11aaa3"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const std::multimap&lt;<a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&gt;&amp; grpc::ClientContext::GetServerTrailingMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a905d667d96613e022cd83c13dbedb4c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::ClientContext::peer </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5057cab6d547678dded90c024efab652"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpr_timespec grpc::ClientContext::raw_deadline </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43bb17bbd6ab49face3793e8883c5682"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ClientContext::set_authority </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>authority</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a48672c1e42084d2cd6975746b84658dd"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ClientContext::set_census_context </td>
+ <td>(</td>
+ <td class="paramtype">struct <a class="el" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">census_context</a> *&#160;</td>
+ <td class="paramname"><em>ccp</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a67a71b32afe1d71189aa3a24146ec61d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ClientContext::set_compression_algorithm </td>
+ <td>(</td>
+ <td class="paramtype">grpc_compression_algorithm&#160;</td>
+ <td class="paramname"><em>algorithm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac09d9bcb018a58c970adbab7ecd201cb"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ClientContext::set_credentials </td>
+ <td>(</td>
+ <td class="paramtype">const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>creds</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad4e16866fee3f6ee5a10efb5be6f4da6"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ClientContext::set_deadline </td>
+ <td>(</td>
+ <td class="paramtype">const T &amp;&#160;</td>
+ <td class="paramname"><em>deadline</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abd0f6715c30287b75288015eee628984"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ClientContext::TryCancel </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="af5343062a44a5633b144751e59969237"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5c0c96957129933bfe94a299c764eaa7"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4b00162a9bd86e07669f2af67f85c73a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af3547958eadfaeb18692865bd73999ad"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ade499098cc91745c1c87147d7a7fb7bf"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d5659aa24edba057895be774e2752ec"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4498fada67d531d99a8642f47d746544"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4aac0a120f3498d1151460ef89ce8446"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class InputMessage , class OutputMessage &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> BlockingUnaryCall </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const InputMessage &amp;&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">OutputMessage *&#160;</td>
+ <td class="paramname"><em>result</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa7c3f046b48d55b5a82cbee3fd84faa2"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a94ad025954d211da7d27efa58cb2ea91"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac47342240f21ce36f47485e4ab41a10d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class Channel</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="client__context_8h_source.html">client_context.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_reader.html b/doc/ref/c++/html/classgrpc_1_1_client_reader.html
new file mode 100644
index 0000000000..4c1f3de00b
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_reader.html
@@ -0,0 +1,263 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientReader&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_reader.html">ClientReader</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientReader&lt; R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client__context_8h_source.html">client_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:abf0d84e441443c364b29b206fd7d0c56"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:abf0d84e441443c364b29b206fd7d0c56"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56">ClientReader</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const W &amp;request)</td></tr>
+<tr class="separator:abf0d84e441443c364b29b206fd7d0c56"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad471c81c02db253508b9fd599beab93e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e">WaitForInitialMetadata</a> ()</td></tr>
+<tr class="separator:ad471c81c02db253508b9fd599beab93e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1305f6a3159b73866b4b66621f573ae7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7">Read</a> (R *msg) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a1305f6a3159b73866b4b66621f573ae7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abb69eb7672e42eb09fbc4d7110d142df"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df">Finish</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:abb69eb7672e42eb09fbc4d7110d142df"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></td></tr>
+<tr class="memitem:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a> ()</td></tr>
+<tr class="separator:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a> ()</td></tr>
+<tr class="separator:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="abf0d84e441443c364b29b206fd7d0c56"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a>&lt; R &gt;::<a class="el" href="classgrpc_1_1_client_reader.html">ClientReader</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>request</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="abb69eb7672e42eb09fbc4d7110d142df"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a>&lt; R &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">grpc::ClientStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a1305f6a3159b73866b4b66621f573ae7"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a>&lt; R &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">grpc::ReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad471c81c02db253508b9fd599beab93e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a>&lt; R &gt;::WaitForInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19">grpc::ClientReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="client__context_8h_source.html">client_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_reader_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_reader_interface.html
new file mode 100644
index 0000000000..8821c2cdda
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_reader_interface.html
@@ -0,0 +1,153 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientReaderInterface&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_reader_interface.html">ClientReaderInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientReaderInterface&lt; R &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aee87dd6e3e8a40853207ceb53b590b19"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19">WaitForInitialMetadata</a> ()=0</td></tr>
+<tr class="separator:aee87dd6e3e8a40853207ceb53b590b19"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></td></tr>
+<tr class="memitem:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a> ()</td></tr>
+<tr class="separator:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98e2927a42c793017ce7d8c6e88539c4 inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">Finish</a> ()=0</td></tr>
+<tr class="separator:a98e2927a42c793017ce7d8c6e88539c4 inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a> ()</td></tr>
+<tr class="separator:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04a1da8610d790ea86ecd5a14fe892b8 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">Read</a> (R *msg)=0</td></tr>
+<tr class="separator:a04a1da8610d790ea86ecd5a14fe892b8 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aee87dd6e3e8a40853207ceb53b590b19"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_client_reader_interface.html">grpc::ClientReaderInterface</a>&lt; R &gt;::WaitForInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e">grpc::ClientReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_reader_writer.html b/doc/ref/c++/html/classgrpc_1_1_client_reader_writer.html
new file mode 100644
index 0000000000..61fd543a0a
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_reader_writer.html
@@ -0,0 +1,328 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientReaderWriter&lt; R, W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_reader_writer.html">ClientReaderWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientReaderWriter&lt; R, W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client__context_8h_source.html">client_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a787e8b30520c9b32ef877bf1d3298dcc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc">ClientReaderWriter</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context)</td></tr>
+<tr class="separator:a787e8b30520c9b32ef877bf1d3298dcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af19ce81004b69300aa18d9ce14be29be"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be">WaitForInitialMetadata</a> ()</td></tr>
+<tr class="separator:af19ce81004b69300aa18d9ce14be29be"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcf4e48162a850ae106e9d2f6fd03d0c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c">Read</a> (R *msg) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:adcf4e48162a850ae106e9d2f6fd03d0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5e579c3ff2854b7776fe125a0a0cf762"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762">Write</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a5e579c3ff2854b7776fe125a0a0cf762"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ed775777711d64b848f31260aef2898"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898">WritesDone</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a5ed775777711d64b848f31260aef2898"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aabd46ba35f39419bbcfeff8c0843c116"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116">Finish</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:aabd46ba35f39419bbcfeff8c0843c116"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></td></tr>
+<tr class="memitem:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a> ()</td></tr>
+<tr class="separator:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a> ()</td></tr>
+<tr class="separator:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a> (const W &amp;msg)</td></tr>
+<tr class="separator:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a> ()</td></tr>
+<tr class="separator:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a787e8b30520c9b32ef877bf1d3298dcc"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a>&lt; R, W &gt;::<a class="el" href="classgrpc_1_1_client_reader_writer.html">ClientReaderWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aabd46ba35f39419bbcfeff8c0843c116"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a>&lt; R, W &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">grpc::ClientStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="adcf4e48162a850ae106e9d2f6fd03d0c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a>&lt; R, W &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">grpc::ReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="af19ce81004b69300aa18d9ce14be29be"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a>&lt; R, W &gt;::WaitForInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5e579c3ff2854b7776fe125a0a0cf762"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a>&lt; R, W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>options</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">grpc::WriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5ed775777711d64b848f31260aef2898"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a>&lt; R, W &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="client__context_8h_source.html">client_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_reader_writer_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_reader_writer_interface.html
new file mode 100644
index 0000000000..48e1ab1c30
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_reader_writer_interface.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientReaderWriterInterface&lt; W, R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html">ClientReaderWriterInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientReaderWriterInterface&lt; W, R &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a6ead554cc1b991f2289b26fb80fdde5e"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e">WaitForInitialMetadata</a> ()=0</td></tr>
+<tr class="separator:a6ead554cc1b991f2289b26fb80fdde5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a52f4e5d5ac7fe0e4995cb337aa0ecfc8"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8">WritesDone</a> ()=0</td></tr>
+<tr class="separator:a52f4e5d5ac7fe0e4995cb337aa0ecfc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></td></tr>
+<tr class="memitem:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a> ()</td></tr>
+<tr class="separator:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98e2927a42c793017ce7d8c6e88539c4 inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">Finish</a> ()=0</td></tr>
+<tr class="separator:a98e2927a42c793017ce7d8c6e88539c4 inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a> ()</td></tr>
+<tr class="separator:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6b2aeb8957265b62bdc063b48f15d44 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">Write</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options)=0</td></tr>
+<tr class="separator:aa6b2aeb8957265b62bdc063b48f15d44 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a> (const W &amp;msg)</td></tr>
+<tr class="separator:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a> ()</td></tr>
+<tr class="separator:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04a1da8610d790ea86ecd5a14fe892b8 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">Read</a> (R *msg)=0</td></tr>
+<tr class="separator:a04a1da8610d790ea86ecd5a14fe892b8 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a6ead554cc1b991f2289b26fb80fdde5e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html">grpc::ClientReaderWriterInterface</a>&lt; W, R &gt;::WaitForInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be">grpc::ClientReaderWriter&lt; R, W &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a52f4e5d5ac7fe0e4995cb337aa0ecfc8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html">grpc::ClientReaderWriterInterface</a>&lt; W, R &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898">grpc::ClientReaderWriter&lt; R, W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_streaming_handler.html b/doc/ref/c++/html/classgrpc_1_1_client_streaming_handler.html
new file mode 100644
index 0000000000..2592ea4edb
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_streaming_handler.html
@@ -0,0 +1,187 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a193efc3ca1c668dddacd42e25c4956ff"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff">ClientStreamingHandler</a> (std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, <a class="el" href="classgrpc_1_1_server_reader.html">ServerReader</a>&lt; RequestType &gt; *, ResponseType *)&gt; func, ServiceType *service)</td></tr>
+<tr class="separator:a193efc3ca1c668dddacd42e25c4956ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a702cbf84fa766383bfbb818c8a16e67c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c">RunHandler</a> (const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;param)</td></tr>
+<tr class="separator:a702cbf84fa766383bfbb818c8a16e67c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_method_handler"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_method_handler')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_method_handler.html">grpc::MethodHandler</a></td></tr>
+<tr class="memitem:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">~MethodHandler</a> ()</td></tr>
+<tr class="separator:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a193efc3ca1c668dddacd42e25c4956ff"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_streaming_handler.html">grpc::ClientStreamingHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::<a class="el" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a> </td>
+ <td>(</td>
+ <td class="paramtype">std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, <a class="el" href="classgrpc_1_1_server_reader.html">ServerReader</a>&lt; RequestType &gt; *, ResponseType *)&gt;&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ServiceType *&#160;</td>
+ <td class="paramname"><em>service</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a702cbf84fa766383bfbb818c8a16e67c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_client_streaming_handler.html">grpc::ClientStreamingHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::RunHandler </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;&#160;</td>
+ <td class="paramname"><em>param</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">grpc::MethodHandler</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_streaming_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_streaming_interface.html
new file mode 100644
index 0000000000..315435b8f9
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_streaming_interface.html
@@ -0,0 +1,167 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientStreamingInterface Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_streaming_interface.html">ClientStreamingInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientStreamingInterface Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a312c9454c0f950e1c75b5c802bcbb00e"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a> ()</td></tr>
+<tr class="separator:a312c9454c0f950e1c75b5c802bcbb00e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98e2927a42c793017ce7d8c6e88539c4"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">Finish</a> ()=0</td></tr>
+<tr class="separator:a98e2927a42c793017ce7d8c6e88539c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a312c9454c0f950e1c75b5c802bcbb00e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::ClientStreamingInterface::~ClientStreamingInterface </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a98e2927a42c793017ce7d8c6e88539c4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::ClientStreamingInterface::Finish </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116">grpc::ClientReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658">grpc::ClientWriter&lt; W &gt;</a>, and <a class="el" href="classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df">grpc::ClientReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_writer.html b/doc/ref/c++/html/classgrpc_1_1_client_writer.html
new file mode 100644
index 0000000000..896a765c2c
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_writer.html
@@ -0,0 +1,275 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientWriter&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_writer.html">ClientWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientWriter&lt; W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="client__context_8h_source.html">client_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aed7d44896e0630a13409803459bd3cbe"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:aed7d44896e0630a13409803459bd3cbe"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe">ClientWriter</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, R *response)</td></tr>
+<tr class="separator:aed7d44896e0630a13409803459bd3cbe"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4c6b81e2d624886c7e86b9b774121e36"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36">Write</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a4c6b81e2d624886c7e86b9b774121e36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abfb6738c132b9ebe49024dc1bf1e9352"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352">WritesDone</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:abfb6738c132b9ebe49024dc1bf1e9352"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe847df1fec5c40f6650498c026eb658"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658">Finish</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:afe847df1fec5c40f6650498c026eb658"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></td></tr>
+<tr class="memitem:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a> ()</td></tr>
+<tr class="separator:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a> ()</td></tr>
+<tr class="separator:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a> (const W &amp;msg)</td></tr>
+<tr class="separator:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aed7d44896e0630a13409803459bd3cbe"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a>&lt; W &gt;::<a class="el" href="classgrpc_1_1_client_writer.html">ClientWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>response</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="afe847df1fec5c40f6650498c026eb658"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a>&lt; W &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">grpc::ClientStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a4c6b81e2d624886c7e86b9b774121e36"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a>&lt; W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>options</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">grpc::WriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="abfb6738c132b9ebe49024dc1bf1e9352"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a>&lt; W &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5">grpc::ClientWriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="client__context_8h_source.html">client_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_client_writer_interface.html b/doc/ref/c++/html/classgrpc_1_1_client_writer_interface.html
new file mode 100644
index 0000000000..32a8f1e2d3
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_client_writer_interface.html
@@ -0,0 +1,155 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ClientWriterInterface&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_client_writer_interface.html">ClientWriterInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ClientWriterInterface&lt; W &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aff19574252338e9ac1b5446e82ed8ac5"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5">WritesDone</a> ()=0</td></tr>
+<tr class="separator:aff19574252338e9ac1b5446e82ed8ac5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_client_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_client_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></td></tr>
+<tr class="memitem:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a> ()</td></tr>
+<tr class="separator:a312c9454c0f950e1c75b5c802bcbb00e inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a98e2927a42c793017ce7d8c6e88539c4 inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">Finish</a> ()=0</td></tr>
+<tr class="separator:a98e2927a42c793017ce7d8c6e88539c4 inherit pub_methods_classgrpc_1_1_client_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a> ()</td></tr>
+<tr class="separator:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6b2aeb8957265b62bdc063b48f15d44 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">Write</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options)=0</td></tr>
+<tr class="separator:aa6b2aeb8957265b62bdc063b48f15d44 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a> (const W &amp;msg)</td></tr>
+<tr class="separator:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aff19574252338e9ac1b5446e82ed8ac5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classgrpc_1_1_client_writer_interface.html">grpc::ClientWriterInterface</a>&lt; W &gt;::WritesDone </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352">grpc::ClientWriter&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_completion_queue.html b/doc/ref/c++/html/classgrpc_1_1_completion_queue.html
new file mode 100644
index 0000000000..63b12c8197
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_completion_queue.html
@@ -0,0 +1,689 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CompletionQueue Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CompletionQueue Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a6227657fb2f29291f80cd092f9baf572"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a> { <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b">SHUTDOWN</a>,
+<a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08">GOT_EVENT</a>,
+<a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04">TIMEOUT</a>
+ }</td></tr>
+<tr class="separator:a6227657fb2f29291f80cd092f9baf572"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aea987a15a475923e949934e481fe3566"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566">CompletionQueue</a> ()</td></tr>
+<tr class="separator:aea987a15a475923e949934e481fe3566"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a081a954044215a7ca8554da4220fb369"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a081a954044215a7ca8554da4220fb369">CompletionQueue</a> (grpc_completion_queue *take)</td></tr>
+<tr class="separator:a081a954044215a7ca8554da4220fb369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0534391b20562e7e4cdc12daf0e36b0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0">~CompletionQueue</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:aa0534391b20562e7e4cdc12daf0e36b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a290ddf3d96e6d1d5886580e60b0602b4"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a290ddf3d96e6d1d5886580e60b0602b4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4">AsyncNext</a> (void **tag, bool *ok, const T &amp;deadline)</td></tr>
+<tr class="separator:a290ddf3d96e6d1d5886580e60b0602b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86d9810ced694e50f7987ac90b9f8c1a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a">Next</a> (void **tag, bool *ok)</td></tr>
+<tr class="separator:a86d9810ced694e50f7987ac90b9f8c1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40efddadd9073386fbcb4f46e8325670"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670">Shutdown</a> ()</td></tr>
+<tr class="separator:a40efddadd9073386fbcb4f46e8325670"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a999c317e716d1e74aca2eb050912302b"><td class="memItemLeft" align="right" valign="top">grpc_completion_queue *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b">cq</a> ()</td></tr>
+<tr class="separator:a999c317e716d1e74aca2eb050912302b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_grpc_library"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_grpc_library')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></td></tr>
+<tr class="memitem:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">GrpcLibrary</a> ()</td></tr>
+<tr class="separator:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">~GrpcLibrary</a> ()</td></tr>
+<tr class="separator:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ade499098cc91745c1c87147d7a7fb7bf"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:ade499098cc91745c1c87147d7a7fb7bf"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#ade499098cc91745c1c87147d7a7fb7bf">::grpc::ClientReader</a></td></tr>
+<tr class="separator:ade499098cc91745c1c87147d7a7fb7bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4498fada67d531d99a8642f47d746544"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:a4498fada67d531d99a8642f47d746544"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a4498fada67d531d99a8642f47d746544">::grpc::ClientWriter</a></td></tr>
+<tr class="separator:a4498fada67d531d99a8642f47d746544"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6d5659aa24edba057895be774e2752ec"><td class="memTemplParams" colspan="2">template&lt;class R , class W &gt; </td></tr>
+<tr class="memitem:a6d5659aa24edba057895be774e2752ec"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a6d5659aa24edba057895be774e2752ec">::grpc::ClientReaderWriter</a></td></tr>
+<tr class="separator:a6d5659aa24edba057895be774e2752ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f20e2d049342ae00242bbc8021a44bd"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:a4f20e2d049342ae00242bbc8021a44bd"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a4f20e2d049342ae00242bbc8021a44bd">::grpc::ServerReader</a></td></tr>
+<tr class="separator:a4f20e2d049342ae00242bbc8021a44bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f2dfa831a62c43ad5647a45080488e3"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:a2f2dfa831a62c43ad5647a45080488e3"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a2f2dfa831a62c43ad5647a45080488e3">::grpc::ServerWriter</a></td></tr>
+<tr class="separator:a2f2dfa831a62c43ad5647a45080488e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c0a0d64c582a952c8f16d8eac71c677"><td class="memTemplParams" colspan="2">template&lt;class R , class W &gt; </td></tr>
+<tr class="memitem:a8c0a0d64c582a952c8f16d8eac71c677"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a8c0a0d64c582a952c8f16d8eac71c677">::grpc::ServerReaderWriter</a></td></tr>
+<tr class="separator:a8c0a0d64c582a952c8f16d8eac71c677"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76b9bb18b02084e9eaa8c9b99c668676"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:a76b9bb18b02084e9eaa8c9b99c668676"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a76b9bb18b02084e9eaa8c9b99c668676">RpcMethodHandler</a></td></tr>
+<tr class="separator:a76b9bb18b02084e9eaa8c9b99c668676"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae11583f8aab976055b1feae895d7e12a"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:ae11583f8aab976055b1feae895d7e12a"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#ae11583f8aab976055b1feae895d7e12a">ClientStreamingHandler</a></td></tr>
+<tr class="separator:ae11583f8aab976055b1feae895d7e12a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2a23a31e1f8f09e2e51f09e7f50ba0c"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:ac2a23a31e1f8f09e2e51f09e7f50ba0c"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c">ServerStreamingHandler</a></td></tr>
+<tr class="separator:ac2a23a31e1f8f09e2e51f09e7f50ba0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fcf1462b4ea3c6a37e54076aafb93e1"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:a9fcf1462b4ea3c6a37e54076aafb93e1"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a9fcf1462b4ea3c6a37e54076aafb93e1">BidiStreamingHandler</a></td></tr>
+<tr class="separator:a9fcf1462b4ea3c6a37e54076aafb93e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c3fa4c066981aae114e41c3f9340144"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a8c3fa4c066981aae114e41c3f9340144">::grpc::Server</a></td></tr>
+<tr class="separator:a8c3fa4c066981aae114e41c3f9340144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6c5b4f4c66d254f341915982a17aac95"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a6c5b4f4c66d254f341915982a17aac95">::grpc::ServerContext</a></td></tr>
+<tr class="separator:a6c5b4f4c66d254f341915982a17aac95"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4aac0a120f3498d1151460ef89ce8446"><td class="memTemplParams" colspan="2">template&lt;class InputMessage , class OutputMessage &gt; </td></tr>
+<tr class="memitem:a4aac0a120f3498d1151460ef89ce8446"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a4aac0a120f3498d1151460ef89ce8446">BlockingUnaryCall</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const InputMessage &amp;request, OutputMessage *result)</td></tr>
+<tr class="separator:a4aac0a120f3498d1151460ef89ce8446"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="a6227657fb2f29291f80cd092f9baf572"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">grpc::CompletionQueue::NextStatus</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b"></a>SHUTDOWN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08"></a>GOT_EVENT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04"></a>TIMEOUT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aea987a15a475923e949934e481fe3566"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CompletionQueue::CompletionQueue </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a081a954044215a7ca8554da4220fb369"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CompletionQueue::CompletionQueue </td>
+ <td>(</td>
+ <td class="paramtype">grpc_completion_queue *&#160;</td>
+ <td class="paramname"><em>take</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa0534391b20562e7e4cdc12daf0e36b0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::CompletionQueue::~CompletionQueue </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a290ddf3d96e6d1d5886580e60b0602b4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a> grpc::CompletionQueue::AsyncNext </td>
+ <td>(</td>
+ <td class="paramtype">void **&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>ok</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const T &amp;&#160;</td>
+ <td class="paramname"><em>deadline</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a999c317e716d1e74aca2eb050912302b"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_completion_queue* grpc::CompletionQueue::cq </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a86d9810ced694e50f7987ac90b9f8c1a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::CompletionQueue::Next </td>
+ <td>(</td>
+ <td class="paramtype">void **&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>ok</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40efddadd9073386fbcb4f46e8325670"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::CompletionQueue::Shutdown </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ade499098cc91745c1c87147d7a7fb7bf"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6d5659aa24edba057895be774e2752ec"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4498fada67d531d99a8642f47d746544"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c3fa4c066981aae114e41c3f9340144"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server.html">grpc::Server</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6c5b4f4c66d254f341915982a17aac95"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f20e2d049342ae00242bbc8021a44bd"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c0a0d64c582a952c8f16d8eac71c677"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2f2dfa831a62c43ad5647a45080488e3"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9fcf1462b4ea3c6a37e54076aafb93e1"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4aac0a120f3498d1151460ef89ce8446"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class InputMessage , class OutputMessage &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> BlockingUnaryCall </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const InputMessage &amp;&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">OutputMessage *&#160;</td>
+ <td class="paramname"><em>result</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae11583f8aab976055b1feae895d7e12a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76b9bb18b02084e9eaa8c9b99c668676"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac2a23a31e1f8f09e2e51f09e7f50ba0c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_completion_queue_tag.html b/doc/ref/c++/html/classgrpc_1_1_completion_queue_tag.html
new file mode 100644
index 0000000000..67d9ee9a33
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_completion_queue_tag.html
@@ -0,0 +1,178 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CompletionQueueTag Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CompletionQueueTag Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a2cbf0212ed795c79f98c3421ed0cb4ab"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">~CompletionQueueTag</a> ()</td></tr>
+<tr class="separator:a2cbf0212ed795c79f98c3421ed0cb4ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af7b1abfcd9e506d118dfdcf29ce7fe8d"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d">FinalizeResult</a> (void **tag, bool *status)=0</td></tr>
+<tr class="separator:af7b1abfcd9e506d118dfdcf29ce7fe8d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a2cbf0212ed795c79f98c3421ed0cb4ab"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::CompletionQueueTag::~CompletionQueueTag </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="af7b1abfcd9e506d118dfdcf29ce7fe8d"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool grpc::CompletionQueueTag::FinalizeResult </td>
+ <td>(</td>
+ <td class="paramtype">void **&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>, <a class="el" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">grpc::SneakyCallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a>, <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a>, and <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_credentials.html b/doc/ref/c++/html/classgrpc_1_1_credentials.html
new file mode 100644
index 0000000000..814e30edf0
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_credentials.html
@@ -0,0 +1,275 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::Credentials Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_credentials.html">Credentials</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::Credentials Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af4e8a65a6cee2b847e11134671c213f2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_credentials.html#af4e8a65a6cee2b847e11134671c213f2">~Credentials</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:af4e8a65a6cee2b847e11134671c213f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2b3162e0dbb4530ac1c4b81a0339b1e1"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_credentials.html#a2b3162e0dbb4530ac1c4b81a0339b1e1">ApplyToCall</a> (grpc_call *call)=0</td></tr>
+<tr class="separator:a2b3162e0dbb4530ac1c4b81a0339b1e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_grpc_library"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_grpc_library')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></td></tr>
+<tr class="memitem:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">GrpcLibrary</a> ()</td></tr>
+<tr class="separator:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">~GrpcLibrary</a> ()</td></tr>
+<tr class="separator:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:aefc960d2b52b15f2561946e0f840874f"><td class="memItemLeft" align="right" valign="top">virtual SecureCredentials *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_credentials.html#aefc960d2b52b15f2561946e0f840874f">AsSecureCredentials</a> ()=0</td></tr>
+<tr class="separator:aefc960d2b52b15f2561946e0f840874f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a319db47fafb1868e66fd34b8bc084f3f"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_credentials.html#a319db47fafb1868e66fd34b8bc084f3f">CompositeCredentials</a> (const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;creds1, const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;creds2)</td></tr>
+<tr class="separator:a319db47fafb1868e66fd34b8bc084f3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6cd496f9dd7e19b5bdbafaa41036fe69"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69">CreateChannel</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;target, const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;creds, const <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;args)</td></tr>
+<tr class="separator:a6cd496f9dd7e19b5bdbafaa41036fe69"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af4e8a65a6cee2b847e11134671c213f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Credentials::~Credentials </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2b3162e0dbb4530ac1c4b81a0339b1e1"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool grpc::Credentials::ApplyToCall </td>
+ <td>(</td>
+ <td class="paramtype">grpc_call *&#160;</td>
+ <td class="paramname"><em>call</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aefc960d2b52b15f2561946e0f840874f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual SecureCredentials* grpc::Credentials::AsSecureCredentials </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a319db47fafb1868e66fd34b8bc084f3f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; CompositeCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>creds1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>creds2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6cd496f9dd7e19b5bdbafaa41036fe69"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>&gt; CreateChannel </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="credentials_8h_source.html">credentials.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_dynamic_thread_pool.html b/doc/ref/c++/html/classgrpc_1_1_dynamic_thread_pool.html
new file mode 100644
index 0000000000..070606b9ac
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_dynamic_thread_pool.html
@@ -0,0 +1,190 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::DynamicThreadPool Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html">DynamicThreadPool</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::DynamicThreadPool Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="dynamic__thread__pool_8h_source.html">dynamic_thread_pool.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af4b6567a60ddfa8551dfbddab4cb7209"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#af4b6567a60ddfa8551dfbddab4cb7209">DynamicThreadPool</a> (int reserve_threads)</td></tr>
+<tr class="separator:af4b6567a60ddfa8551dfbddab4cb7209"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a81f1b15a357a8ca6cb3d7fef7a5456"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#a9a81f1b15a357a8ca6cb3d7fef7a5456">~DynamicThreadPool</a> ()</td></tr>
+<tr class="separator:a9a81f1b15a357a8ca6cb3d7fef7a5456"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea1cdc7989a2d6ab8fb1906428dbea30"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30">Add</a> (const std::function&lt; void()&gt; &amp;callback) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:aea1cdc7989a2d6ab8fb1906428dbea30"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_thread_pool_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_thread_pool_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></td></tr>
+<tr class="memitem:a74a3380787d9be6e261c2849cdc84538 inherit pub_methods_classgrpc_1_1_thread_pool_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538">~ThreadPoolInterface</a> ()</td></tr>
+<tr class="separator:a74a3380787d9be6e261c2849cdc84538 inherit pub_methods_classgrpc_1_1_thread_pool_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af4b6567a60ddfa8551dfbddab4cb7209"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::DynamicThreadPool::DynamicThreadPool </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>reserve_threads</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9a81f1b15a357a8ca6cb3d7fef7a5456"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::DynamicThreadPool::~DynamicThreadPool </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aea1cdc7989a2d6ab8fb1906428dbea30"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::DynamicThreadPool::Add </td>
+ <td>(</td>
+ <td class="paramtype">const std::function&lt; void()&gt; &amp;&#160;</td>
+ <td class="paramname"><em>callback</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce">grpc::ThreadPoolInterface</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="dynamic__thread__pool_8h_source.html">dynamic_thread_pool.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_fixed_size_thread_pool.html b/doc/ref/c++/html/classgrpc_1_1_fixed_size_thread_pool.html
new file mode 100644
index 0000000000..7c1a996ede
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_fixed_size_thread_pool.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::FixedSizeThreadPool Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html">FixedSizeThreadPool</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::FixedSizeThreadPool Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="fixed__size__thread__pool_8h_source.html">fixed_size_thread_pool.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a7b1d9cbdaedc89f5f4dd6e5782bfe5e0"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#a7b1d9cbdaedc89f5f4dd6e5782bfe5e0">FixedSizeThreadPool</a> (int num_threads)</td></tr>
+<tr class="separator:a7b1d9cbdaedc89f5f4dd6e5782bfe5e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa31a8326a490c77e0e04b6df7ac3d7f8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#aa31a8326a490c77e0e04b6df7ac3d7f8">~FixedSizeThreadPool</a> ()</td></tr>
+<tr class="separator:aa31a8326a490c77e0e04b6df7ac3d7f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7ee348722d8d120720032fae96d3026"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026">Add</a> (const std::function&lt; void()&gt; &amp;callback) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ad7ee348722d8d120720032fae96d3026"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_thread_pool_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_thread_pool_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></td></tr>
+<tr class="memitem:a74a3380787d9be6e261c2849cdc84538 inherit pub_methods_classgrpc_1_1_thread_pool_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538">~ThreadPoolInterface</a> ()</td></tr>
+<tr class="separator:a74a3380787d9be6e261c2849cdc84538 inherit pub_methods_classgrpc_1_1_thread_pool_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a7b1d9cbdaedc89f5f4dd6e5782bfe5e0"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::FixedSizeThreadPool::FixedSizeThreadPool </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>num_threads</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa31a8326a490c77e0e04b6df7ac3d7f8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::FixedSizeThreadPool::~FixedSizeThreadPool </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ad7ee348722d8d120720032fae96d3026"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::FixedSizeThreadPool::Add </td>
+ <td>(</td>
+ <td class="paramtype">const std::function&lt; void()&gt; &amp;&#160;</td>
+ <td class="paramname"><em>callback</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce">grpc::ThreadPoolInterface</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="fixed__size__thread__pool_8h_source.html">fixed_size_thread_pool.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_generic_server_context.html b/doc/ref/c++/html/classgrpc_1_1_generic_server_context.html
new file mode 100644
index 0000000000..0ed1a2664a
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_generic_server_context.html
@@ -0,0 +1,224 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::GenericServerContext Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::GenericServerContext Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="async__generic__service_8h_source.html">async_generic_service.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae08880fa4adb490326953ad905715c37"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37">method</a> () const </td></tr>
+<tr class="separator:ae08880fa4adb490326953ad905715c37"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2962278c0c6280a2d95f5747ea03babc"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc">host</a> () const </td></tr>
+<tr class="separator:a2962278c0c6280a2d95f5747ea03babc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_server_context"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_server_context')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></td></tr>
+<tr class="memitem:a10f47e15934195dcaed6b756498b8fff inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">ServerContext</a> ()</td></tr>
+<tr class="separator:a10f47e15934195dcaed6b756498b8fff inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd37847b1bdba2f82e472fed6f31cea6 inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6">~ServerContext</a> ()</td></tr>
+<tr class="separator:afd37847b1bdba2f82e472fed6f31cea6 inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e43d1edb334addb8bf672efcfe03052 inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">std::chrono::system_clock::time_point&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052">deadline</a> ()</td></tr>
+<tr class="separator:a9e43d1edb334addb8bf672efcfe03052 inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add483537d23d3e06125dbe3f2bf50adc inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">gpr_timespec&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc">raw_deadline</a> ()</td></tr>
+<tr class="separator:add483537d23d3e06125dbe3f2bf50adc inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3371f0adf8521c7097eee437fc4ca4f inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f">AddInitialMetadata</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;value)</td></tr>
+<tr class="separator:ae3371f0adf8521c7097eee437fc4ca4f inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac30e12c4ee3ca008522b24157f4f886c inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c">AddTrailingMetadata</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;value)</td></tr>
+<tr class="separator:ac30e12c4ee3ca008522b24157f4f886c inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae52a89bbf70c27be3325080000757864 inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864">IsCancelled</a> () const </td></tr>
+<tr class="separator:ae52a89bbf70c27be3325080000757864 inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82f70d1b5b56ca2a4a8a2f5bad6d8ca1 inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">const std::multimap<br class="typebreak"/>
+&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1">client_metadata</a> ()</td></tr>
+<tr class="separator:a82f70d1b5b56ca2a4a8a2f5bad6d8ca1 inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a401d5c77fde5cccb13155ccd668787e8 inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">grpc_compression_level&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8">compression_level</a> () const </td></tr>
+<tr class="separator:a401d5c77fde5cccb13155ccd668787e8 inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accfdf160f46aa20eda843443c3eea91d inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d">set_compression_level</a> (grpc_compression_level level)</td></tr>
+<tr class="separator:accfdf160f46aa20eda843443c3eea91d inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a825f46891cc7db6c896add746eec8171 inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">grpc_compression_algorithm&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171">compression_algorithm</a> () const </td></tr>
+<tr class="separator:a825f46891cc7db6c896add746eec8171 inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade949b886faed50627e5cbd35fe4ec72 inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72">set_compression_algorithm</a> (grpc_compression_algorithm algorithm)</td></tr>
+<tr class="separator:ade949b886faed50627e5cbd35fe4ec72 inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a8657d382cee53d670208d640383e8e inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; const <br class="typebreak"/>
+<a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e">auth_context</a> () const </td></tr>
+<tr class="separator:a2a8657d382cee53d670208d640383e8e inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ef7910ccd61514eafa7087519bb17bb inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb">peer</a> () const </td></tr>
+<tr class="separator:a5ef7910ccd61514eafa7087519bb17bb inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3adc0c2dc243915f6167c6f80d2882e inherit pub_methods_classgrpc_1_1_server_context"><td class="memItemLeft" align="right" valign="top">const struct census_context *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e">census_context</a> () const </td></tr>
+<tr class="separator:af3adc0c2dc243915f6167c6f80d2882e inherit pub_methods_classgrpc_1_1_server_context"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ac2055578ac48afabe5af487878450f68"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_server_context.html#ac2055578ac48afabe5af487878450f68">Server</a></td></tr>
+<tr class="separator:ac2055578ac48afabe5af487878450f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2962278c0c6280a2d95f5747ea03babc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; grpc::GenericServerContext::host </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae08880fa4adb490326953ad905715c37"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; grpc::GenericServerContext::method </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ac2055578ac48afabe5af487878450f68"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server.html">Server</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="async__generic__service_8h_source.html">async_generic_service.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_generic_stub.html b/doc/ref/c++/html/classgrpc_1_1_generic_stub.html
new file mode 100644
index 0000000000..35169367c9
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_generic_stub.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::GenericStub Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_generic_stub.html">GenericStub</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::GenericStub Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="generic__stub_8h_source.html">generic_stub.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1523f381907ac18b841bb4064f2a3b88"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88">GenericStub</a> (std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> &gt; channel)</td></tr>
+<tr class="separator:a1523f381907ac18b841bb4064f2a3b88"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a29d999cf06468cfe12d3cdc912cb0afb"><td class="memItemLeft" align="right" valign="top">std::unique_ptr<br class="typebreak"/>
+&lt; <a class="el" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">GenericClientAsyncReaderWriter</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_stub.html#a29d999cf06468cfe12d3cdc912cb0afb">Call</a> (<a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;method, <a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *cq, void *tag)</td></tr>
+<tr class="separator:a29d999cf06468cfe12d3cdc912cb0afb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a1523f381907ac18b841bb4064f2a3b88"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::GenericStub::GenericStub </td>
+ <td>(</td>
+ <td class="paramtype">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> &gt;&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a29d999cf06468cfe12d3cdc912cb0afb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::unique_ptr&lt;<a class="el" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">GenericClientAsyncReaderWriter</a>&gt; grpc::GenericStub::Call </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> *&#160;</td>
+ <td class="paramname"><em>cq</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="generic__stub_8h_source.html">generic_stub.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_grpc_library.html b/doc/ref/c++/html/classgrpc_1_1_grpc_library.html
new file mode 100644
index 0000000000..6304898e9f
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_grpc_library.html
@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::GrpcLibrary Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_grpc_library.html">GrpcLibrary</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::GrpcLibrary Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="grpc__library_8h_source.html">grpc_library.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af026f86430cf235d7eaf532231a44528"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">GrpcLibrary</a> ()</td></tr>
+<tr class="separator:af026f86430cf235d7eaf532231a44528"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adadb2fbc794175c8c4578bf283b009a8"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">~GrpcLibrary</a> ()</td></tr>
+<tr class="separator:adadb2fbc794175c8c4578bf283b009a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af026f86430cf235d7eaf532231a44528"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::GrpcLibrary::GrpcLibrary </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adadb2fbc794175c8c4578bf283b009a8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::GrpcLibrary::~GrpcLibrary </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="grpc__library_8h_source.html">grpc_library.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_internal_stub.html b/doc/ref/c++/html/classgrpc_1_1_internal_stub.html
new file mode 100644
index 0000000000..f912a485df
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_internal_stub.html
@@ -0,0 +1,191 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::InternalStub Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_internal_stub.html">InternalStub</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::InternalStub Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="internal__stub_8h_source.html">internal_stub.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a5af6cf82c3f8218d94704226559e1b3c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c">InternalStub</a> (const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> &gt; &amp;<a class="el" href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729">channel</a>)</td></tr>
+<tr class="separator:a5af6cf82c3f8218d94704226559e1b3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a43127d606386366f5935c08a21da059e"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e">~InternalStub</a> ()</td></tr>
+<tr class="separator:a43127d606386366f5935c08a21da059e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae314e47d92a7aed9779724d3a81c2729"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729">channel</a> ()</td></tr>
+<tr class="separator:ae314e47d92a7aed9779724d3a81c2729"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a5af6cf82c3f8218d94704226559e1b3c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::InternalStub::InternalStub </td>
+ <td>(</td>
+ <td class="paramtype">const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>channel</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a43127d606386366f5935c08a21da059e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::InternalStub::~InternalStub </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae314e47d92a7aed9779724d3a81c2729"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* grpc::InternalStub::channel </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="internal__stub_8h_source.html">internal_stub.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_method_handler.html b/doc/ref/c++/html/classgrpc_1_1_method_handler.html
new file mode 100644
index 0000000000..8d4fa61437
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_method_handler.html
@@ -0,0 +1,174 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::MethodHandler Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::MethodHandler Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:afc792a35059d6c46b78d7d9410f9a4b0"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">~MethodHandler</a> ()</td></tr>
+<tr class="separator:afc792a35059d6c46b78d7d9410f9a4b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8f901c44915f81bb86ecba0278f7db16"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">RunHandler</a> (const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;param)=0</td></tr>
+<tr class="separator:a8f901c44915f81bb86ecba0278f7db16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="afc792a35059d6c46b78d7d9410f9a4b0"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::MethodHandler::~MethodHandler </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a8f901c44915f81bb86ecba0278f7db16"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void grpc::MethodHandler::RunHandler </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;&#160;</td>
+ <td class="paramname"><em>param</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>, <a class="el" href="classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>, <a class="el" href="classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>, and <a class="el" href="classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_reader_interface.html b/doc/ref/c++/html/classgrpc_1_1_reader_interface.html
new file mode 100644
index 0000000000..c05e619810
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_reader_interface.html
@@ -0,0 +1,172 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ReaderInterface&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_reader_interface.html">ReaderInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ReaderInterface&lt; R &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a1fbd3d6e86e2f97e5444f29b0af0a9d5"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a> ()</td></tr>
+<tr class="separator:a1fbd3d6e86e2f97e5444f29b0af0a9d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04a1da8610d790ea86ecd5a14fe892b8"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">Read</a> (R *msg)=0</td></tr>
+<tr class="separator:a04a1da8610d790ea86ecd5a14fe892b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a1fbd3d6e86e2f97e5444f29b0af0a9d5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface</a>&lt; R &gt;::~<a class="el" href="classgrpc_1_1_reader_interface.html">ReaderInterface</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a04a1da8610d790ea86ecd5a14fe892b8"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface</a>&lt; R &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d">grpc::ServerReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0">grpc::ServerReader&lt; R &gt;</a>, <a class="el" href="classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c">grpc::ClientReaderWriter&lt; R, W &gt;</a>, and <a class="el" href="classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7">grpc::ClientReader&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_rpc_method.html b/doc/ref/c++/html/classgrpc_1_1_rpc_method.html
new file mode 100644
index 0000000000..bcfa869b0a
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_rpc_method.html
@@ -0,0 +1,265 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::RpcMethod Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::RpcMethod Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rpc__method_8h_source.html">rpc_method.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ace95416ed07409e43059a0dfe9e23688"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> { <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e">NORMAL_RPC</a> = 0,
+<a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a">CLIENT_STREAMING</a>,
+<a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775">SERVER_STREAMING</a>,
+<a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894">BIDI_STREAMING</a>
+ }</td></tr>
+<tr class="separator:ace95416ed07409e43059a0dfe9e23688"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ab06ace199b65e09f1d4c9fde93dafc94"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94">RpcMethod</a> (const char *<a class="el" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a>, <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> type, void *<a class="el" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">channel_tag</a>)</td></tr>
+<tr class="separator:ab06ace199b65e09f1d4c9fde93dafc94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fb4872e0af4c79faffe2bb30b2cafe3"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a> () const </td></tr>
+<tr class="separator:a6fb4872e0af4c79faffe2bb30b2cafe3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1de5a64a1e57b5938c4733f9152291b6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6">method_type</a> () const </td></tr>
+<tr class="separator:a1de5a64a1e57b5938c4733f9152291b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59527e676d274583ec6961fb3f4356b3"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">channel_tag</a> () const </td></tr>
+<tr class="separator:a59527e676d274583ec6961fb3f4356b3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="ace95416ed07409e43059a0dfe9e23688"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">grpc::RpcMethod::RpcType</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e"></a>NORMAL_RPC</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a"></a>CLIENT_STREAMING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775"></a>SERVER_STREAMING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894"></a>BIDI_STREAMING</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ab06ace199b65e09f1d4c9fde93dafc94"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::RpcMethod::RpcMethod </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>channel_tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a59527e676d274583ec6961fb3f4356b3"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void* grpc::RpcMethod::channel_tag </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1de5a64a1e57b5938c4733f9152291b6"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> grpc::RpcMethod::method_type </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6fb4872e0af4c79faffe2bb30b2cafe3"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const char* grpc::RpcMethod::name </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="rpc__method_8h_source.html">rpc_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_rpc_method_handler.html b/doc/ref/c++/html/classgrpc_1_1_rpc_method_handler.html
new file mode 100644
index 0000000000..e4a22362d6
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_rpc_method_handler.html
@@ -0,0 +1,187 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af18c4bdcfc73d0238b238097547e6a48"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48">RpcMethodHandler</a> (std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, const RequestType *, ResponseType *)&gt; func, ServiceType *service)</td></tr>
+<tr class="separator:af18c4bdcfc73d0238b238097547e6a48"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3dd04e9149c844224390b403ff24fa41"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41">RunHandler</a> (const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;param)</td></tr>
+<tr class="separator:a3dd04e9149c844224390b403ff24fa41"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_method_handler"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_method_handler')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_method_handler.html">grpc::MethodHandler</a></td></tr>
+<tr class="memitem:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">~MethodHandler</a> ()</td></tr>
+<tr class="separator:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af18c4bdcfc73d0238b238097547e6a48"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::<a class="el" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a> </td>
+ <td>(</td>
+ <td class="paramtype">std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, const RequestType *, ResponseType *)&gt;&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ServiceType *&#160;</td>
+ <td class="paramname"><em>service</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a3dd04e9149c844224390b403ff24fa41"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::RunHandler </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;&#160;</td>
+ <td class="paramname"><em>param</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">grpc::MethodHandler</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_rpc_service.html b/doc/ref/c++/html/classgrpc_1_1_rpc_service.html
new file mode 100644
index 0000000000..182924cadc
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_rpc_service.html
@@ -0,0 +1,191 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::RpcService Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_rpc_service.html">RpcService</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::RpcService Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af2c7369056129ef2e6fde87f040ba578"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578">AddMethod</a> (<a class="el" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a> *method)</td></tr>
+<tr class="separator:af2c7369056129ef2e6fde87f040ba578"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb8bee7f95fdd7bfb12e9c510fbdd192"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192">GetMethod</a> (int i)</td></tr>
+<tr class="separator:adb8bee7f95fdd7bfb12e9c510fbdd192"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a779c023a42b33893a5ae2b7ca0ef5191"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191">GetMethodCount</a> () const </td></tr>
+<tr class="separator:a779c023a42b33893a5ae2b7ca0ef5191"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="af2c7369056129ef2e6fde87f040ba578"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::RpcService::AddMethod </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a> *&#160;</td>
+ <td class="paramname"><em>method</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adb8bee7f95fdd7bfb12e9c510fbdd192"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a>* grpc::RpcService::GetMethod </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>i</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a779c023a42b33893a5ae2b7ca0ef5191"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc::RpcService::GetMethodCount </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_rpc_service_method.html b/doc/ref/c++/html/classgrpc_1_1_rpc_service_method.html
new file mode 100644
index 0000000000..cbbbe14b38
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_rpc_service_method.html
@@ -0,0 +1,201 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::RpcServiceMethod Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::RpcServiceMethod Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a9a4a54d93c2c5d2b5b52ff50af5971da"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da">RpcServiceMethod</a> (const char *<a class="el" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a>, <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcMethod::RpcType</a> type, <a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a> *<a class="el" href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1">handler</a>)</td></tr>
+<tr class="separator:a9a4a54d93c2c5d2b5b52ff50af5971da"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adcc8bfb7dc592f6b64fec6660f1cbaf1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1">handler</a> ()</td></tr>
+<tr class="separator:adcc8bfb7dc592f6b64fec6660f1cbaf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_rpc_method"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_rpc_method')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></td></tr>
+<tr class="memitem:ab06ace199b65e09f1d4c9fde93dafc94 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94">RpcMethod</a> (const char *<a class="el" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a>, <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> type, void *<a class="el" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">channel_tag</a>)</td></tr>
+<tr class="separator:ab06ace199b65e09f1d4c9fde93dafc94 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6fb4872e0af4c79faffe2bb30b2cafe3 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a> () const </td></tr>
+<tr class="separator:a6fb4872e0af4c79faffe2bb30b2cafe3 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1de5a64a1e57b5938c4733f9152291b6 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6">method_type</a> () const </td></tr>
+<tr class="separator:a1de5a64a1e57b5938c4733f9152291b6 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a59527e676d274583ec6961fb3f4356b3 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memItemLeft" align="right" valign="top">void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">channel_tag</a> () const </td></tr>
+<tr class="separator:a59527e676d274583ec6961fb3f4356b3 inherit pub_methods_classgrpc_1_1_rpc_method"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_types_classgrpc_1_1_rpc_method"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classgrpc_1_1_rpc_method')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></td></tr>
+<tr class="memitem:ace95416ed07409e43059a0dfe9e23688 inherit pub_types_classgrpc_1_1_rpc_method"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> { <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e">NORMAL_RPC</a> = 0,
+<a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a">CLIENT_STREAMING</a>,
+<a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775">SERVER_STREAMING</a>,
+<a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894">BIDI_STREAMING</a>
+ }</td></tr>
+<tr class="separator:ace95416ed07409e43059a0dfe9e23688 inherit pub_types_classgrpc_1_1_rpc_method"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a9a4a54d93c2c5d2b5b52ff50af5971da"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::RpcServiceMethod::RpcServiceMethod </td>
+ <td>(</td>
+ <td class="paramtype">const char *&#160;</td>
+ <td class="paramname"><em>name</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcMethod::RpcType</a>&#160;</td>
+ <td class="paramname"><em>type</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a> *&#160;</td>
+ <td class="paramname"><em>handler</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="adcc8bfb7dc592f6b64fec6660f1cbaf1"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a>* grpc::RpcServiceMethod::handler </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_serialization_traits.html b/doc/ref/c++/html/classgrpc_1_1_serialization_traits.html
new file mode 100644
index 0000000000..5180f23c83
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_serialization_traits.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SerializationTraits&lt; Message, UnusedButHereForPartialTemplateSpecialization &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc::SerializationTraits&lt; Message, UnusedButHereForPartialTemplateSpecialization &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Defines how to serialize and deserialize some type.
+ <a href="classgrpc_1_1_serialization_traits.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="serialization__traits_8h_source.html">serialization_traits.h</a>&gt;</code></p>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;class Message, class UnusedButHereForPartialTemplateSpecialization = void&gt;<br/>
+class grpc::SerializationTraits&lt; Message, UnusedButHereForPartialTemplateSpecialization &gt;</h3>
+
+<p>Defines how to serialize and deserialize some type. </p>
+<p>Used for hooking different message serialization API's into GRPC. Each <a class="el" href="classgrpc_1_1_serialization_traits.html" title="Defines how to serialize and deserialize some type. ">SerializationTraits</a> implementation must provide the following functions: static <a class="el" href="classgrpc_1_1_status.html">Status</a> Serialize(const Message&amp; msg, grpc_byte_buffer** buffer, static <a class="el" href="classgrpc_1_1_status.html">Status</a> Deserialize(grpc_byte_buffer* buffer, Message* msg, int max_message_size);</p>
+<p>Serialize is required to convert message to a grpc_byte_buffer, and to store a pointer to that byte buffer at *buffer. *own_buffer should be set to true if the caller owns said byte buffer, or false if ownership is retained elsewhere.</p>
+<p>Deserialize is required to convert buffer into the message stored at msg. max_message_size is passed in as a bound on the maximum number of message bytes Deserialize should accept.</p>
+<p>Both functions return a <a class="el" href="classgrpc_1_1_status.html">Status</a>, allowing them to explain what went wrong if required. </p>
+</div><hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="serialization__traits_8h_source.html">serialization_traits.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html b/doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html
new file mode 100644
index 0000000000..0c2b82be96
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html
@@ -0,0 +1,198 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SerializationTraits&lt; ByteBuffer, void &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html">SerializationTraits< ByteBuffer, void ></a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::SerializationTraits&lt; ByteBuffer, void &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">byte_buffer.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:ab84ad3da236c61aab17db403b48367f5"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5">Deserialize</a> (grpc_byte_buffer *byte_buffer, <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> *dest, int max_message_size)</td></tr>
+<tr class="separator:ab84ad3da236c61aab17db403b48367f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a142e6455c0e040332f57bd3a35eebd33"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33">Serialize</a> (const <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> &amp;source, grpc_byte_buffer **buffer, bool *own_buffer)</td></tr>
+<tr class="separator:a142e6455c0e040332f57bd3a35eebd33"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ab84ad3da236c61aab17db403b48367f5"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a>&lt; <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, void &gt;::Deserialize </td>
+ <td>(</td>
+ <td class="paramtype">grpc_byte_buffer *&#160;</td>
+ <td class="paramname"><em>byte_buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> *&#160;</td>
+ <td class="paramname"><em>dest</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a142e6455c0e040332f57bd3a35eebd33"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a>&lt; <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, void &gt;::Serialize </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> &amp;&#160;</td>
+ <td class="paramname"><em>source</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">grpc_byte_buffer **&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>own_buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="byte__buffer_8h_source.html">byte_buffer.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html b/doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html
new file mode 100644
index 0000000000..9c933c0295
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html
@@ -0,0 +1,202 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html">SerializationTraits< T, typename std::enable_if< std::is_base_of< grpc::protobuf::Message, T >::value >::type ></a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-static-methods">Static Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="proto__utils_8h_source.html">proto_utils.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:adeebcdc9be666be418d94c021179762c"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c">Serialize</a> (const <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> &amp;msg, grpc_byte_buffer **buffer, bool *own_buffer)</td></tr>
+<tr class="separator:adeebcdc9be666be418d94c021179762c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6a6966d3807ba3c7b3ccc79dca93b92a"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a">Deserialize</a> (grpc_byte_buffer *buffer, <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> *msg, int max_message_size)</td></tr>
+<tr class="separator:a6a6966d3807ba3c7b3ccc79dca93b92a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a6a6966d3807ba3c7b3ccc79dca93b92a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class T &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a>&lt; T, typename std::enable_if&lt; std::is_base_of&lt; <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a>, T &gt;::value &gt;::type &gt;::Deserialize </td>
+ <td>(</td>
+ <td class="paramtype">grpc_byte_buffer *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adeebcdc9be666be418d94c021179762c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class T &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">static <a class="el" href="classgrpc_1_1_status.html">Status</a> <a class="el" href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a>&lt; T, typename std::enable_if&lt; std::is_base_of&lt; <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a>, T &gt;::value &gt;::type &gt;::Serialize </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">grpc_byte_buffer **&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>own_buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="proto__utils_8h_source.html">proto_utils.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server.html b/doc/ref/c++/html/classgrpc_1_1_server.html
new file mode 100644
index 0000000000..a594e9e71f
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server.html
@@ -0,0 +1,243 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::Server Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server.html">Server</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::Server Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server_8h_source.html">server.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa13591ff1bb2c5d871778189b391feb2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2">~Server</a> ()</td></tr>
+<tr class="separator:aa13591ff1bb2c5d871778189b391feb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a777a9c8873ae4969585083e0e62482dc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a777a9c8873ae4969585083e0e62482dc">Shutdown</a> ()</td></tr>
+<tr class="separator:a777a9c8873ae4969585083e0e62482dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6f1ec2700c94637813178a5b5f71d6d5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a6f1ec2700c94637813178a5b5f71d6d5">Wait</a> ()</td></tr>
+<tr class="separator:a6f1ec2700c94637813178a5b5f71d6d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_grpc_library"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_grpc_library')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></td></tr>
+<tr class="memitem:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">GrpcLibrary</a> ()</td></tr>
+<tr class="separator:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">~GrpcLibrary</a> ()</td></tr>
+<tr class="separator:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:afa12bc5912105e1966887391881de595"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#afa12bc5912105e1966887391881de595">AsyncGenericService</a></td></tr>
+<tr class="separator:afa12bc5912105e1966887391881de595"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f65421947ee8cbae15ff96b44f6d532"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a9f65421947ee8cbae15ff96b44f6d532">AsynchronousService</a></td></tr>
+<tr class="separator:a9f65421947ee8cbae15ff96b44f6d532"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c2db91f514d534f06396d90c1b1f2c4"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html#a8c2db91f514d534f06396d90c1b1f2c4">ServerBuilder</a></td></tr>
+<tr class="separator:a8c2db91f514d534f06396d90c1b1f2c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aa13591ff1bb2c5d871778189b391feb2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Server::~Server </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a777a9c8873ae4969585083e0e62482dc"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::Server::Shutdown </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6f1ec2700c94637813178a5b5f71d6d5"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::Server::Wait </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="afa12bc5912105e1966887391881de595"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9f65421947ee8cbae15ff96b44f6d532"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c2db91f514d534f06396d90c1b1f2c4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server_builder.html">ServerBuilder</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="server_8h_source.html">server.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_async_reader.html b/doc/ref/c++/html/classgrpc_1_1_server_async_reader.html
new file mode 100644
index 0000000000..7abcbb59bb
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_async_reader.html
@@ -0,0 +1,302 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerAsyncReader&lt; W, R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_async_reader.html">ServerAsyncReader</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerAsyncReader&lt; W, R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__context_8h_source.html">server_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a7f351e1d526b250336402ee03b8cc75e"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e">ServerAsyncReader</a> (<a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *ctx)</td></tr>
+<tr class="separator:a7f351e1d526b250336402ee03b8cc75e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5d05028563e789203225c0ba548710b6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6">SendInitialMetadata</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a5d05028563e789203225c0ba548710b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac60c1f8d5373644f952377096f1a5b2f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f">Read</a> (R *msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ac60c1f8d5373644f952377096f1a5b2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aaa77b67709c07ab60bc190bce5ee9a59"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59">Finish</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;status, void *tag)</td></tr>
+<tr class="separator:aaa77b67709c07ab60bc190bce5ee9a59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4407f30ef2dbce2b650824536a6f76fb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb">FinishWithError</a> (const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;status, void *tag)</td></tr>
+<tr class="separator:a4407f30ef2dbce2b650824536a6f76fb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_server_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_server_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">~ServerAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
+<tr class="separator:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a7f351e1d526b250336402ee03b8cc75e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader</a>&lt; W, R &gt;::<a class="el" href="classgrpc_1_1_server_async_reader.html">ServerAsyncReader</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aaa77b67709c07ab60bc190bce5ee9a59"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader</a>&lt; W, R &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4407f30ef2dbce2b650824536a6f76fb"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader</a>&lt; W, R &gt;::FinishWithError </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac60c1f8d5373644f952377096f1a5b2f"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader</a>&lt; W, R &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">grpc::AsyncReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5d05028563e789203225c0ba548710b6"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader</a>&lt; W, R &gt;::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">grpc::ServerAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="server__context_8h_source.html">server_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_async_reader_writer.html b/doc/ref/c++/html/classgrpc_1_1_server_async_reader_writer.html
new file mode 100644
index 0000000000..35314dfeef
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_async_reader_writer.html
@@ -0,0 +1,301 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerAsyncReaderWriter&lt; R, W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerAsyncReaderWriter&lt; R, W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__context_8h_source.html">server_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af2b106bee556273e61541950502237ef"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef">ServerAsyncReaderWriter</a> (<a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *ctx)</td></tr>
+<tr class="separator:af2b106bee556273e61541950502237ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab40293c8bda8123b5c0e7a0455860533"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533">SendInitialMetadata</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ab40293c8bda8123b5c0e7a0455860533"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7d8d9d36449700c19cd08ecc608cb96a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a">Read</a> (R *msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a7d8d9d36449700c19cd08ecc608cb96a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad0d2750db5e195d053e3361e1ff0df35"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35">Write</a> (const W &amp;msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ad0d2750db5e195d053e3361e1ff0df35"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae4daaf42b4077d171638e574a67418b5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5">Finish</a> (const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;status, void *tag)</td></tr>
+<tr class="separator:ae4daaf42b4077d171638e574a67418b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_server_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_server_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">~ServerAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a> ()</td></tr>
+<tr class="separator:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
+<tr class="separator:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af2b106bee556273e61541950502237ef"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a>&lt; R, W &gt;::<a class="el" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae4daaf42b4077d171638e574a67418b5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a>&lt; R, W &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7d8d9d36449700c19cd08ecc608cb96a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a>&lt; R, W &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">grpc::AsyncReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ab40293c8bda8123b5c0e7a0455860533"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a>&lt; R, W &gt;::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">grpc::ServerAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad0d2750db5e195d053e3361e1ff0df35"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a>&lt; R, W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">grpc::AsyncWriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="server__context_8h_source.html">server_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_async_response_writer.html b/doc/ref/c++/html/classgrpc_1_1_server_async_response_writer.html
new file mode 100644
index 0000000000..75b92b1e77
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_async_response_writer.html
@@ -0,0 +1,258 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerAsyncResponseWriter&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_async_response_writer.html">ServerAsyncResponseWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerAsyncResponseWriter&lt; W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="async__unary__call_8h_source.html">async_unary_call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a3c97a19ba6eaa0b9eef9b6b86dbad9e9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9">ServerAsyncResponseWriter</a> (<a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *ctx)</td></tr>
+<tr class="separator:a3c97a19ba6eaa0b9eef9b6b86dbad9e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76be68485a36629af40560aa1f1de0b7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7">SendInitialMetadata</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a76be68485a36629af40560aa1f1de0b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad1e22d187c82a537ded4504fbdef6809"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809">Finish</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;status, void *tag)</td></tr>
+<tr class="separator:ad1e22d187c82a537ded4504fbdef6809"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af1e5812c2a8017bf82e84748f201ce93"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93">FinishWithError</a> (const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;status, void *tag)</td></tr>
+<tr class="separator:af1e5812c2a8017bf82e84748f201ce93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_server_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_server_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">~ServerAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a3c97a19ba6eaa0b9eef9b6b86dbad9e9"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter</a>&lt; W &gt;::<a class="el" href="classgrpc_1_1_server_async_response_writer.html">ServerAsyncResponseWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ad1e22d187c82a537ded4504fbdef6809"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter</a>&lt; W &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af1e5812c2a8017bf82e84748f201ce93"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter</a>&lt; W &gt;::FinishWithError </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76be68485a36629af40560aa1f1de0b7"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter</a>&lt; W &gt;::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">grpc::ServerAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="async__unary__call_8h_source.html">async_unary_call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_async_streaming_interface.html b/doc/ref/c++/html/classgrpc_1_1_server_async_streaming_interface.html
new file mode 100644
index 0000000000..cbfc8110af
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_async_streaming_interface.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerAsyncStreamingInterface Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerAsyncStreamingInterface Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="service__type_8h_source.html">service_type.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af7c2bc176a6658e86a74a1cacd53d3bc"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">~ServerAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:af7c2bc176a6658e86a74a1cacd53d3bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab2d5db2b2ca3032994396543a8bb044c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">SendInitialMetadata</a> (void *tag)=0</td></tr>
+<tr class="separator:ab2d5db2b2ca3032994396543a8bb044c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ac2055578ac48afabe5af487878450f68"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ac2055578ac48afabe5af487878450f68">Server</a></td></tr>
+<tr class="separator:ac2055578ac48afabe5af487878450f68"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af7c2bc176a6658e86a74a1cacd53d3bc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::ServerAsyncStreamingInterface::~ServerAsyncStreamingInterface </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ab2d5db2b2ca3032994396543a8bb044c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void grpc::ServerAsyncStreamingInterface::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455">grpc::ServerAsyncWriter&lt; W &gt;</a>, <a class="el" href="classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6">grpc::ServerAsyncReader&lt; W, R &gt;</a>, and <a class="el" href="classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ac2055578ac48afabe5af487878450f68"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server.html">Server</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="service__type_8h_source.html">service_type.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_async_writer.html b/doc/ref/c++/html/classgrpc_1_1_server_async_writer.html
new file mode 100644
index 0000000000..9034e1b399
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_async_writer.html
@@ -0,0 +1,258 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerAsyncWriter&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_async_writer.html">ServerAsyncWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerAsyncWriter&lt; W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__context_8h_source.html">server_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa841b99fddf9ce347b9c617058f179f2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2">ServerAsyncWriter</a> (<a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *ctx)</td></tr>
+<tr class="separator:aa841b99fddf9ce347b9c617058f179f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad3a6ab6a46639131770efd0149d04455"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455">SendInitialMetadata</a> (void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ad3a6ab6a46639131770efd0149d04455"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7027a65f3d84ff275b130cf9a0f170f5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5">Write</a> (const W &amp;msg, void *tag) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a7027a65f3d84ff275b130cf9a0f170f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbb050c198cbbc7f91f9f7fb8bf8c004"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004">Finish</a> (const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;status, void *tag)</td></tr>
+<tr class="separator:afbb050c198cbbc7f91f9f7fb8bf8c004"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_server_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_server_async_streaming_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></td></tr>
+<tr class="memitem:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">~ServerAsyncStreamingInterface</a> ()</td></tr>
+<tr class="separator:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_async_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a> ()</td></tr>
+<tr class="separator:a94cc9e4ed13c8fe4a1d883d465477ddd inherit pub_methods_classgrpc_1_1_async_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aa841b99fddf9ce347b9c617058f179f2"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter</a>&lt; W &gt;::<a class="el" href="classgrpc_1_1_server_async_writer.html">ServerAsyncWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="afbb050c198cbbc7f91f9f7fb8bf8c004"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter</a>&lt; W &gt;::Finish </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td>
+ <td class="paramname"><em>status</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad3a6ab6a46639131770efd0149d04455"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter</a>&lt; W &gt;::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">grpc::ServerAsyncStreamingInterface</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a7027a65f3d84ff275b130cf9a0f170f5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter</a>&lt; W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">void *&#160;</td>
+ <td class="paramname"><em>tag</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">grpc::AsyncWriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="server__context_8h_source.html">server_context.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_builder.html b/doc/ref/c++/html/classgrpc_1_1_server_builder.html
new file mode 100644
index 0000000000..2f63ed06d2
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_builder.html
@@ -0,0 +1,356 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerBuilder Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_builder.html">ServerBuilder</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerBuilder Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__builder_8h_source.html">server_builder.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a208346e343cd01351492f0cace59b242"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#a208346e343cd01351492f0cace59b242">ServerBuilder</a> ()</td></tr>
+<tr class="separator:a208346e343cd01351492f0cace59b242"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40f39b2ac8224a91c426b0e75bbb3c66"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66">RegisterService</a> (<a class="el" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a> *service)</td></tr>
+<tr class="separator:a40f39b2ac8224a91c426b0e75bbb3c66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2da69a943b10839d6993f9b292aaf578"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#a2da69a943b10839d6993f9b292aaf578">RegisterAsyncService</a> (<a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a> *service)</td></tr>
+<tr class="separator:a2da69a943b10839d6993f9b292aaf578"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac62b0aa4c0448907e02d15386d58ef86"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#ac62b0aa4c0448907e02d15386d58ef86">RegisterAsyncGenericService</a> (<a class="el" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a> *service)</td></tr>
+<tr class="separator:ac62b0aa4c0448907e02d15386d58ef86"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad961d91042fe44aa38fa3e1d57120861"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#ad961d91042fe44aa38fa3e1d57120861">RegisterService</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;host, <a class="el" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a> *service)</td></tr>
+<tr class="separator:ad961d91042fe44aa38fa3e1d57120861"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2107596214baf71230f4f270dec1d064"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#a2107596214baf71230f4f270dec1d064">RegisterAsyncService</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;host, <a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a> *service)</td></tr>
+<tr class="separator:a2107596214baf71230f4f270dec1d064"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae1e6314004fba16607b883b8cc81f5c9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9">SetMaxMessageSize</a> (int max_message_size)</td></tr>
+<tr class="separator:ae1e6314004fba16607b883b8cc81f5c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a256e035e62b43cd79137abf7c066902a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#a256e035e62b43cd79137abf7c066902a">AddListeningPort</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;addr, std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> &gt; creds, int *selected_port=nullptr)</td></tr>
+<tr class="separator:a256e035e62b43cd79137abf7c066902a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aea5dd313149029114c60571e5ee8b4cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#aea5dd313149029114c60571e5ee8b4cd">SetThreadPool</a> (<a class="el" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a> *thread_pool)</td></tr>
+<tr class="separator:aea5dd313149029114c60571e5ee8b4cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accbbd95080ca974e84fa1d4cb2ea9518"><td class="memItemLeft" align="right" valign="top">std::unique_ptr<br class="typebreak"/>
+&lt; <a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#accbbd95080ca974e84fa1d4cb2ea9518">AddCompletionQueue</a> ()</td></tr>
+<tr class="separator:accbbd95080ca974e84fa1d4cb2ea9518"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af284cd39b185043e8e92405c1ae0f310"><td class="memItemLeft" align="right" valign="top">std::unique_ptr&lt; <a class="el" href="classgrpc_1_1_server.html">Server</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html#af284cd39b185043e8e92405c1ae0f310">BuildAndStart</a> ()</td></tr>
+<tr class="separator:af284cd39b185043e8e92405c1ae0f310"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a208346e343cd01351492f0cace59b242"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ServerBuilder::ServerBuilder </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="accbbd95080ca974e84fa1d4cb2ea9518"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::unique_ptr&lt;<a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>&gt; grpc::ServerBuilder::AddCompletionQueue </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a256e035e62b43cd79137abf7c066902a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::AddListeningPort </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>addr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> &gt;&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int *&#160;</td>
+ <td class="paramname"><em>selected_port</em> = <code>nullptr</code>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af284cd39b185043e8e92405c1ae0f310"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::unique_ptr&lt;<a class="el" href="classgrpc_1_1_server.html">Server</a>&gt; grpc::ServerBuilder::BuildAndStart </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac62b0aa4c0448907e02d15386d58ef86"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::RegisterAsyncGenericService </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2da69a943b10839d6993f9b292aaf578"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::RegisterAsyncService </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2107596214baf71230f4f270dec1d064"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::RegisterAsyncService </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a> *&#160;</td>
+ <td class="paramname"><em>service</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a40f39b2ac8224a91c426b0e75bbb3c66"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::RegisterService </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a> *&#160;</td>
+ <td class="paramname"><em>service</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad961d91042fe44aa38fa3e1d57120861"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::RegisterService </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>host</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a> *&#160;</td>
+ <td class="paramname"><em>service</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae1e6314004fba16607b883b8cc81f5c9"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::SetMaxMessageSize </td>
+ <td>(</td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aea5dd313149029114c60571e5ee8b4cd"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerBuilder::SetThreadPool </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a> *&#160;</td>
+ <td class="paramname"><em>thread_pool</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="server__builder_8h_source.html">server_builder.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_completion_queue.html b/doc/ref/c++/html/classgrpc_1_1_server_completion_queue.html
new file mode 100644
index 0000000000..fffdceba54
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_completion_queue.html
@@ -0,0 +1,166 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerCompletionQueue Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerCompletionQueue Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a8c2db91f514d534f06396d90c1b1f2c4"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_completion_queue.html#a8c2db91f514d534f06396d90c1b1f2c4">ServerBuilder</a></td></tr>
+<tr class="separator:a8c2db91f514d534f06396d90c1b1f2c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_types_classgrpc_1_1_completion_queue"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classgrpc_1_1_completion_queue')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></td></tr>
+<tr class="memitem:a6227657fb2f29291f80cd092f9baf572 inherit pub_types_classgrpc_1_1_completion_queue"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a> { <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b">SHUTDOWN</a>,
+<a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08">GOT_EVENT</a>,
+<a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04">TIMEOUT</a>
+ }</td></tr>
+<tr class="separator:a6227657fb2f29291f80cd092f9baf572 inherit pub_types_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_completion_queue"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_completion_queue')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></td></tr>
+<tr class="memitem:aea987a15a475923e949934e481fe3566 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566">CompletionQueue</a> ()</td></tr>
+<tr class="separator:aea987a15a475923e949934e481fe3566 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a081a954044215a7ca8554da4220fb369 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a081a954044215a7ca8554da4220fb369">CompletionQueue</a> (grpc_completion_queue *take)</td></tr>
+<tr class="separator:a081a954044215a7ca8554da4220fb369 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa0534391b20562e7e4cdc12daf0e36b0 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0">~CompletionQueue</a> () <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:aa0534391b20562e7e4cdc12daf0e36b0 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a290ddf3d96e6d1d5886580e60b0602b4 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a290ddf3d96e6d1d5886580e60b0602b4 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4">AsyncNext</a> (void **tag, bool *ok, const T &amp;deadline)</td></tr>
+<tr class="separator:a290ddf3d96e6d1d5886580e60b0602b4 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a86d9810ced694e50f7987ac90b9f8c1a inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a">Next</a> (void **tag, bool *ok)</td></tr>
+<tr class="separator:a86d9810ced694e50f7987ac90b9f8c1a inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a40efddadd9073386fbcb4f46e8325670 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670">Shutdown</a> ()</td></tr>
+<tr class="separator:a40efddadd9073386fbcb4f46e8325670 inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a999c317e716d1e74aca2eb050912302b inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memItemLeft" align="right" valign="top">grpc_completion_queue *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b">cq</a> ()</td></tr>
+<tr class="separator:a999c317e716d1e74aca2eb050912302b inherit pub_methods_classgrpc_1_1_completion_queue"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_grpc_library"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_grpc_library')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></td></tr>
+<tr class="memitem:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">GrpcLibrary</a> ()</td></tr>
+<tr class="separator:af026f86430cf235d7eaf532231a44528 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">~GrpcLibrary</a> ()</td></tr>
+<tr class="separator:adadb2fbc794175c8c4578bf283b009a8 inherit pub_methods_classgrpc_1_1_grpc_library"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a8c2db91f514d534f06396d90c1b1f2c4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server_builder.html">ServerBuilder</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_context.html b/doc/ref/c++/html/classgrpc_1_1_server_context.html
new file mode 100644
index 0000000000..4da6f961d1
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_context.html
@@ -0,0 +1,760 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerContext Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerContext Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__context_8h_source.html">server_context.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a10f47e15934195dcaed6b756498b8fff"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">ServerContext</a> ()</td></tr>
+<tr class="separator:a10f47e15934195dcaed6b756498b8fff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd37847b1bdba2f82e472fed6f31cea6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6">~ServerContext</a> ()</td></tr>
+<tr class="separator:afd37847b1bdba2f82e472fed6f31cea6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9e43d1edb334addb8bf672efcfe03052"><td class="memItemLeft" align="right" valign="top">std::chrono::system_clock::time_point&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052">deadline</a> ()</td></tr>
+<tr class="separator:a9e43d1edb334addb8bf672efcfe03052"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:add483537d23d3e06125dbe3f2bf50adc"><td class="memItemLeft" align="right" valign="top">gpr_timespec&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc">raw_deadline</a> ()</td></tr>
+<tr class="separator:add483537d23d3e06125dbe3f2bf50adc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae3371f0adf8521c7097eee437fc4ca4f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f">AddInitialMetadata</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;value)</td></tr>
+<tr class="separator:ae3371f0adf8521c7097eee437fc4ca4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac30e12c4ee3ca008522b24157f4f886c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c">AddTrailingMetadata</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;value)</td></tr>
+<tr class="separator:ac30e12c4ee3ca008522b24157f4f886c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae52a89bbf70c27be3325080000757864"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864">IsCancelled</a> () const </td></tr>
+<tr class="separator:ae52a89bbf70c27be3325080000757864"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82f70d1b5b56ca2a4a8a2f5bad6d8ca1"><td class="memItemLeft" align="right" valign="top">const std::multimap<br class="typebreak"/>
+&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1">client_metadata</a> ()</td></tr>
+<tr class="separator:a82f70d1b5b56ca2a4a8a2f5bad6d8ca1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a401d5c77fde5cccb13155ccd668787e8"><td class="memItemLeft" align="right" valign="top">grpc_compression_level&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8">compression_level</a> () const </td></tr>
+<tr class="separator:a401d5c77fde5cccb13155ccd668787e8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accfdf160f46aa20eda843443c3eea91d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d">set_compression_level</a> (grpc_compression_level level)</td></tr>
+<tr class="separator:accfdf160f46aa20eda843443c3eea91d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a825f46891cc7db6c896add746eec8171"><td class="memItemLeft" align="right" valign="top">grpc_compression_algorithm&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171">compression_algorithm</a> () const </td></tr>
+<tr class="separator:a825f46891cc7db6c896add746eec8171"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ade949b886faed50627e5cbd35fe4ec72"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72">set_compression_algorithm</a> (grpc_compression_algorithm algorithm)</td></tr>
+<tr class="separator:ade949b886faed50627e5cbd35fe4ec72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a8657d382cee53d670208d640383e8e"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; const <br class="typebreak"/>
+<a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e">auth_context</a> () const </td></tr>
+<tr class="separator:a2a8657d382cee53d670208d640383e8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ef7910ccd61514eafa7087519bb17bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb">peer</a> () const </td></tr>
+<tr class="separator:a5ef7910ccd61514eafa7087519bb17bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af3adc0c2dc243915f6167c6f80d2882e"><td class="memItemLeft" align="right" valign="top">const struct census_context *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e">census_context</a> () const </td></tr>
+<tr class="separator:af3adc0c2dc243915f6167c6f80d2882e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a54fd90aaca3685b127354412368eb1c6"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a54fd90aaca3685b127354412368eb1c6">::grpc::testing::InteropContextInspector</a></td></tr>
+<tr class="separator:a54fd90aaca3685b127354412368eb1c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c3fa4c066981aae114e41c3f9340144"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a8c3fa4c066981aae114e41c3f9340144">::grpc::Server</a></td></tr>
+<tr class="separator:a8c3fa4c066981aae114e41c3f9340144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a774bb57486686958c67f29072de768ed"><td class="memTemplParams" colspan="2">template&lt;class W , class R &gt; </td></tr>
+<tr class="memitem:a774bb57486686958c67f29072de768ed"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a774bb57486686958c67f29072de768ed">::grpc::ServerAsyncReader</a></td></tr>
+<tr class="separator:a774bb57486686958c67f29072de768ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a6068d9e3369a1016e7b75350b80f4f45"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:a6068d9e3369a1016e7b75350b80f4f45"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a6068d9e3369a1016e7b75350b80f4f45">::grpc::ServerAsyncWriter</a></td></tr>
+<tr class="separator:a6068d9e3369a1016e7b75350b80f4f45"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2c679b602d120c70a6713fe742704b4e"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:a2c679b602d120c70a6713fe742704b4e"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a2c679b602d120c70a6713fe742704b4e">::grpc::ServerAsyncResponseWriter</a></td></tr>
+<tr class="separator:a2c679b602d120c70a6713fe742704b4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a85f3f3dc5b92690c676b86571be20684"><td class="memTemplParams" colspan="2">template&lt;class R , class W &gt; </td></tr>
+<tr class="memitem:a85f3f3dc5b92690c676b86571be20684"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a85f3f3dc5b92690c676b86571be20684">::grpc::ServerAsyncReaderWriter</a></td></tr>
+<tr class="separator:a85f3f3dc5b92690c676b86571be20684"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4f20e2d049342ae00242bbc8021a44bd"><td class="memTemplParams" colspan="2">template&lt;class R &gt; </td></tr>
+<tr class="memitem:a4f20e2d049342ae00242bbc8021a44bd"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a4f20e2d049342ae00242bbc8021a44bd">::grpc::ServerReader</a></td></tr>
+<tr class="separator:a4f20e2d049342ae00242bbc8021a44bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f2dfa831a62c43ad5647a45080488e3"><td class="memTemplParams" colspan="2">template&lt;class W &gt; </td></tr>
+<tr class="memitem:a2f2dfa831a62c43ad5647a45080488e3"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a2f2dfa831a62c43ad5647a45080488e3">::grpc::ServerWriter</a></td></tr>
+<tr class="separator:a2f2dfa831a62c43ad5647a45080488e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8c0a0d64c582a952c8f16d8eac71c677"><td class="memTemplParams" colspan="2">template&lt;class R , class W &gt; </td></tr>
+<tr class="memitem:a8c0a0d64c582a952c8f16d8eac71c677"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a8c0a0d64c582a952c8f16d8eac71c677">::grpc::ServerReaderWriter</a></td></tr>
+<tr class="separator:a8c0a0d64c582a952c8f16d8eac71c677"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76b9bb18b02084e9eaa8c9b99c668676"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:a76b9bb18b02084e9eaa8c9b99c668676"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a76b9bb18b02084e9eaa8c9b99c668676">RpcMethodHandler</a></td></tr>
+<tr class="separator:a76b9bb18b02084e9eaa8c9b99c668676"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae11583f8aab976055b1feae895d7e12a"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:ae11583f8aab976055b1feae895d7e12a"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ae11583f8aab976055b1feae895d7e12a">ClientStreamingHandler</a></td></tr>
+<tr class="separator:ae11583f8aab976055b1feae895d7e12a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac2a23a31e1f8f09e2e51f09e7f50ba0c"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:ac2a23a31e1f8f09e2e51f09e7f50ba0c"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c">ServerStreamingHandler</a></td></tr>
+<tr class="separator:ac2a23a31e1f8f09e2e51f09e7f50ba0c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fcf1462b4ea3c6a37e54076aafb93e1"><td class="memTemplParams" colspan="2">template&lt;class ServiceType , class RequestType , class ResponseType &gt; </td></tr>
+<tr class="memitem:a9fcf1462b4ea3c6a37e54076aafb93e1"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html#a9fcf1462b4ea3c6a37e54076aafb93e1">BidiStreamingHandler</a></td></tr>
+<tr class="separator:a9fcf1462b4ea3c6a37e54076aafb93e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a10f47e15934195dcaed6b756498b8fff"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ServerContext::ServerContext </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="afd37847b1bdba2f82e472fed6f31cea6"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::ServerContext::~ServerContext </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae3371f0adf8521c7097eee437fc4ca4f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerContext::AddInitialMetadata </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac30e12c4ee3ca008522b24157f4f886c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerContext::AddTrailingMetadata </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>value</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2a8657d382cee53d670208d640383e8e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;const <a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a>&gt; grpc::ServerContext::auth_context </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af3adc0c2dc243915f6167c6f80d2882e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">const struct census_context* grpc::ServerContext::census_context </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a82f70d1b5b56ca2a4a8a2f5bad6d8ca1"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const std::multimap&lt;<a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&gt;&amp; grpc::ServerContext::client_metadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a825f46891cc7db6c896add746eec8171"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_compression_algorithm grpc::ServerContext::compression_algorithm </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a401d5c77fde5cccb13155ccd668787e8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_compression_level grpc::ServerContext::compression_level </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9e43d1edb334addb8bf672efcfe03052"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::chrono::system_clock::time_point grpc::ServerContext::deadline </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae52a89bbf70c27be3325080000757864"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::ServerContext::IsCancelled </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5ef7910ccd61514eafa7087519bb17bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::ServerContext::peer </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="add483537d23d3e06125dbe3f2bf50adc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpr_timespec grpc::ServerContext::raw_deadline </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ade949b886faed50627e5cbd35fe4ec72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerContext::set_compression_algorithm </td>
+ <td>(</td>
+ <td class="paramtype">grpc_compression_algorithm&#160;</td>
+ <td class="paramname"><em>algorithm</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="accfdf160f46aa20eda843443c3eea91d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::ServerContext::set_compression_level </td>
+ <td>(</td>
+ <td class="paramtype">grpc_compression_level&#160;</td>
+ <td class="paramname"><em>level</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a8c3fa4c066981aae114e41c3f9340144"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server.html">grpc::Server</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a774bb57486686958c67f29072de768ed"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W , class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a85f3f3dc5b92690c676b86571be20684"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2c679b602d120c70a6713fe742704b4e"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a6068d9e3369a1016e7b75350b80f4f45"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4f20e2d049342ae00242bbc8021a44bd"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8c0a0d64c582a952c8f16d8eac71c677"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R , class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a2f2dfa831a62c43ad5647a45080488e3"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a54fd90aaca3685b127354412368eb1c6"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::grpc::testing::InteropContextInspector</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9fcf1462b4ea3c6a37e54076aafb93e1"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae11583f8aab976055b1feae895d7e12a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a76b9bb18b02084e9eaa8c9b99c668676"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac2a23a31e1f8f09e2e51f09e7f50ba0c"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="server__context_8h_source.html">server_context.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_credentials.html b/doc/ref/c++/html/classgrpc_1_1_server_credentials.html
new file mode 100644
index 0000000000..50448fd19f
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_credentials.html
@@ -0,0 +1,166 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerCredentials Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerCredentials Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__credentials_8h_source.html">server_credentials.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aa5df8a7a8f509a96f23ef8943a0306ff"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_credentials.html#aa5df8a7a8f509a96f23ef8943a0306ff">~ServerCredentials</a> ()</td></tr>
+<tr class="separator:aa5df8a7a8f509a96f23ef8943a0306ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a8c3fa4c066981aae114e41c3f9340144"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_credentials.html#a8c3fa4c066981aae114e41c3f9340144">::grpc::Server</a></td></tr>
+<tr class="separator:a8c3fa4c066981aae114e41c3f9340144"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aa5df8a7a8f509a96f23ef8943a0306ff"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::ServerCredentials::~ServerCredentials </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a8c3fa4c066981aae114e41c3f9340144"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class ::<a class="el" href="classgrpc_1_1_server.html">grpc::Server</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="server__credentials_8h_source.html">server_credentials.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_reader.html b/doc/ref/c++/html/classgrpc_1_1_server_reader.html
new file mode 100644
index 0000000000..cfe67da217
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_reader.html
@@ -0,0 +1,214 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerReader&lt; R &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_reader.html">ServerReader</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerReader&lt; R &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a43e6b5258cfc623fa719884fce957521"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521">ServerReader</a> (<a class="el" href="classgrpc_1_1_call.html">Call</a> *call, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *ctx)</td></tr>
+<tr class="separator:a43e6b5258cfc623fa719884fce957521"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad2cc630d207d246a851daa339bda479b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b">SendInitialMetadata</a> ()</td></tr>
+<tr class="separator:ad2cc630d207d246a851daa339bda479b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8bd737fbe8d5094fbcf40c45dc7723e0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0">Read</a> (R *msg) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a8bd737fbe8d5094fbcf40c45dc7723e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a> ()</td></tr>
+<tr class="separator:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a43e6b5258cfc623fa719884fce957521"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a>&lt; R &gt;::<a class="el" href="classgrpc_1_1_server_reader.html">ServerReader</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call.html">Call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a8bd737fbe8d5094fbcf40c45dc7723e0"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a>&lt; R &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">grpc::ReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="ad2cc630d207d246a851daa339bda479b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a>&lt; R &gt;::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_reader_writer.html b/doc/ref/c++/html/classgrpc_1_1_server_reader_writer.html
new file mode 100644
index 0000000000..73ba27f203
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_reader_writer.html
@@ -0,0 +1,259 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerReaderWriter&lt; R, W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerReaderWriter&lt; R, W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a8dfe4a7bf682d51c423c2cb2a71e8b52"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52">ServerReaderWriter</a> (<a class="el" href="classgrpc_1_1_call.html">Call</a> *call, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *ctx)</td></tr>
+<tr class="separator:a8dfe4a7bf682d51c423c2cb2a71e8b52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a91d0c7316a266b7e8f5447a6f3362fe5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5">SendInitialMetadata</a> ()</td></tr>
+<tr class="separator:a91d0c7316a266b7e8f5447a6f3362fe5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0398eca2f3cb613273a77c28bd55489d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d">Read</a> (R *msg) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a0398eca2f3cb613273a77c28bd55489d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab416079f6464c056c772f7a1ecb69467"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467">Write</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:ab416079f6464c056c772f7a1ecb69467"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a> ()</td></tr>
+<tr class="separator:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a> (const W &amp;msg)</td></tr>
+<tr class="separator:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_reader_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="memitem:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a> ()</td></tr>
+<tr class="separator:a1fbd3d6e86e2f97e5444f29b0af0a9d5 inherit pub_methods_classgrpc_1_1_reader_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a8dfe4a7bf682d51c423c2cb2a71e8b52"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R, class W&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a>&lt; R, W &gt;::<a class="el" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call.html">Call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a0398eca2f3cb613273a77c28bd55489d"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R, class W&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a>&lt; R, W &gt;::Read </td>
+ <td>(</td>
+ <td class="paramtype">R *&#160;</td>
+ <td class="paramname"><em>msg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">grpc::ReaderInterface&lt; R &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a91d0c7316a266b7e8f5447a6f3362fe5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R, class W&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a>&lt; R, W &gt;::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab416079f6464c056c772f7a1ecb69467"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class R, class W&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a>&lt; R, W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>options</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">grpc::WriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_streaming_handler.html b/doc/ref/c++/html/classgrpc_1_1_server_streaming_handler.html
new file mode 100644
index 0000000000..9d001206d3
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_streaming_handler.html
@@ -0,0 +1,187 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:af846a2bd80177f74bca1007597fbd2a5"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5">ServerStreamingHandler</a> (std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, const RequestType *, <a class="el" href="classgrpc_1_1_server_writer.html">ServerWriter</a>&lt; ResponseType &gt; *)&gt; func, ServiceType *service)</td></tr>
+<tr class="separator:af846a2bd80177f74bca1007597fbd2a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afd874fc0f3a73c4037d626d3ecbcccca"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca">RunHandler</a> (const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;param)</td></tr>
+<tr class="separator:afd874fc0f3a73c4037d626d3ecbcccca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_method_handler"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_method_handler')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_method_handler.html">grpc::MethodHandler</a></td></tr>
+<tr class="memitem:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">~MethodHandler</a> ()</td></tr>
+<tr class="separator:afc792a35059d6c46b78d7d9410f9a4b0 inherit pub_methods_classgrpc_1_1_method_handler"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="af846a2bd80177f74bca1007597fbd2a5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_streaming_handler.html">grpc::ServerStreamingHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::<a class="el" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a> </td>
+ <td>(</td>
+ <td class="paramtype">std::function&lt; <a class="el" href="classgrpc_1_1_status.html">Status</a>(ServiceType *, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *, const RequestType *, <a class="el" href="classgrpc_1_1_server_writer.html">ServerWriter</a>&lt; ResponseType &gt; *)&gt;&#160;</td>
+ <td class="paramname"><em>func</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ServiceType *&#160;</td>
+ <td class="paramname"><em>service</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="afd874fc0f3a73c4037d626d3ecbcccca"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class ServiceType , class RequestType , class ResponseType &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_streaming_handler.html">grpc::ServerStreamingHandler</a>&lt; ServiceType, RequestType, ResponseType &gt;::RunHandler </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> &amp;&#160;</td>
+ <td class="paramname"><em>param</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">grpc::MethodHandler</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_server_writer.html b/doc/ref/c++/html/classgrpc_1_1_server_writer.html
new file mode 100644
index 0000000000..f37959ac89
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_server_writer.html
@@ -0,0 +1,226 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ServerWriter&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_writer.html">ServerWriter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ServerWriter&lt; W &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a119c720c14d6835a8bc40a4ed615f0f2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2">ServerWriter</a> (<a class="el" href="classgrpc_1_1_call.html">Call</a> *call, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *ctx)</td></tr>
+<tr class="separator:a119c720c14d6835a8bc40a4ed615f0f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa53df518d62478d0dbbe6f2f6ec44274"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274">SendInitialMetadata</a> ()</td></tr>
+<tr class="separator:aa53df518d62478d0dbbe6f2f6ec44274"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a995e4cbb3661bfdb2cf51ec2b5975a1a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a">Write</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a995e4cbb3661bfdb2cf51ec2b5975a1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_writer_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_writer_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface&lt; W &gt;</a></td></tr>
+<tr class="memitem:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a> ()</td></tr>
+<tr class="separator:a447d71736fb6e8c6bd21287ecc3a9f75 inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a> (const W &amp;msg)</td></tr>
+<tr class="separator:a5ddbce2a74455afea61fc21e16b01c6a inherit pub_methods_classgrpc_1_1_writer_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a119c720c14d6835a8bc40a4ed615f0f2"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a>&lt; W &gt;::<a class="el" href="classgrpc_1_1_server_writer.html">ServerWriter</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call.html">Call</a> *&#160;</td>
+ <td class="paramname"><em>call</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>ctx</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aa53df518d62478d0dbbe6f2f6ec44274"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a>&lt; W &gt;::SendInitialMetadata </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a995e4cbb3661bfdb2cf51ec2b5975a1a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a>&lt; W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>options</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implements <a class="el" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">grpc::WriterInterface&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following files:<ul>
+<li>include/grpc++/<a class="el" href="completion__queue_8h_source.html">completion_queue.h</a></li>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_slice.html b/doc/ref/c++/html/classgrpc_1_1_slice.html
new file mode 100644
index 0000000000..111fd189fb
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_slice.html
@@ -0,0 +1,394 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::Slice Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_slice.html">Slice</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-types">Public Types</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::Slice Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="slice_8h_source.html">slice.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:ac1e8469bbb6dfa9ab9e646e0b48f5fe2"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a> { <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2">ADD_REF</a>
+ }</td></tr>
+<tr class="separator:ac1e8469bbb6dfa9ab9e646e0b48f5fe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a13fbbec0e9121a8b948d563f9730d75a"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a> { <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7">STEAL_REF</a>
+ }</td></tr>
+<tr class="separator:a13fbbec0e9121a8b948d563f9730d75a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a8c5179cf7a39f66d65887bf298dc548f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">Slice</a> ()</td></tr>
+<tr class="separator:a8c5179cf7a39f66d65887bf298dc548f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f89af608ad9e5bbc2870d4ee7140c94"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94">~Slice</a> ()</td></tr>
+<tr class="separator:a1f89af608ad9e5bbc2870d4ee7140c94"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0cf5718377c0ae4584d58bb6c1b042f2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a0cf5718377c0ae4584d58bb6c1b042f2">Slice</a> (gpr_slice slice, <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a>)</td></tr>
+<tr class="separator:a0cf5718377c0ae4584d58bb6c1b042f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad952f787620a1fe4c519e53e9e1aa921"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ad952f787620a1fe4c519e53e9e1aa921">Slice</a> (gpr_slice slice, <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a>)</td></tr>
+<tr class="separator:ad952f787620a1fe4c519e53e9e1aa921"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0a6b936d72f7ae35f083d003d3e0c8a3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a0a6b936d72f7ae35f083d003d3e0c8a3">Slice</a> (const <a class="el" href="classgrpc_1_1_slice.html">Slice</a> &amp;other)</td></tr>
+<tr class="separator:a0a6b936d72f7ae35f083d003d3e0c8a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac5a109779239ed4d3fd58e8124abdba1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_slice.html">Slice</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1">operator=</a> (<a class="el" href="classgrpc_1_1_slice.html">Slice</a> other)</td></tr>
+<tr class="separator:ac5a109779239ed4d3fd58e8124abdba1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa216fa6d6e98e5e2677b7d33fb4af724"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724">size</a> () const </td></tr>
+<tr class="separator:aa216fa6d6e98e5e2677b7d33fb4af724"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad7b0a21bd37c2ed9899c369777cc9fb8"><td class="memItemLeft" align="right" valign="top">const gpr_uint8 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8">begin</a> () const </td></tr>
+<tr class="separator:ad7b0a21bd37c2ed9899c369777cc9fb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a15f9576be1afa1048ed8963d50581b60"><td class="memItemLeft" align="right" valign="top">const gpr_uint8 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60">end</a> () const </td></tr>
+<tr class="separator:a15f9576be1afa1048ed8963d50581b60"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:ac6c83f28f4b17ae317094a794e92e99e"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html#ac6c83f28f4b17ae317094a794e92e99e">ByteBuffer</a></td></tr>
+<tr class="separator:ac6c83f28f4b17ae317094a794e92e99e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Member Enumeration Documentation</h2>
+<a class="anchor" id="ac1e8469bbb6dfa9ab9e646e0b48f5fe2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">grpc::Slice::AddRef</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2"></a>ADD_REF</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<a class="anchor" id="a13fbbec0e9121a8b948d563f9730d75a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">grpc::Slice::StealRef</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7"></a>STEAL_REF</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a8c5179cf7a39f66d65887bf298dc548f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Slice::Slice </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f89af608ad9e5bbc2870d4ee7140c94"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Slice::~Slice </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0cf5718377c0ae4584d58bb6c1b042f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Slice::Slice </td>
+ <td>(</td>
+ <td class="paramtype">gpr_slice&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a>&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad952f787620a1fe4c519e53e9e1aa921"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Slice::Slice </td>
+ <td>(</td>
+ <td class="paramtype">gpr_slice&#160;</td>
+ <td class="paramname"><em>slice</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a>&#160;</td>
+ <td class="paramname">&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0a6b936d72f7ae35f083d003d3e0c8a3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Slice::Slice </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_slice.html">Slice</a> &amp;&#160;</td>
+ <td class="paramname"><em>other</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ad7b0a21bd37c2ed9899c369777cc9fb8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gpr_uint8* grpc::Slice::begin </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a15f9576be1afa1048ed8963d50581b60"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const gpr_uint8* grpc::Slice::end </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac5a109779239ed4d3fd58e8124abdba1"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_slice.html">Slice</a>&amp; grpc::Slice::operator= </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_slice.html">Slice</a>&#160;</td>
+ <td class="paramname"><em>other</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa216fa6d6e98e5e2677b7d33fb4af724"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">size_t grpc::Slice::size </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="ac6c83f28f4b17ae317094a794e92e99e"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="slice_8h_source.html">slice.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_sneaky_call_op_set.html b/doc/ref/c++/html/classgrpc_1_1_sneaky_call_op_set.html
new file mode 100644
index 0000000000..6a23ab8c44
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_sneaky_call_op_set.html
@@ -0,0 +1,185 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html">SneakyCallOpSet</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> that does not post completions to the completion queue.
+ <a href="classgrpc_1_1_sneaky_call_op_set.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a0ade5b329d43a4002388bac90a8bbafd"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">FinalizeResult</a> (void **tag, bool *status) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="separator:a0ade5b329d43a4002388bac90a8bbafd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_call_op_set"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_call_op_set')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td></tr>
+<tr class="memitem:ae06e1a2d051b6b404eec88c4be303bcf inherit pub_methods_classgrpc_1_1_call_op_set"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf">CallOpSet</a> ()</td></tr>
+<tr class="separator:ae06e1a2d051b6b404eec88c4be303bcf inherit pub_methods_classgrpc_1_1_call_op_set"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a886b55145cdad0994ec589b4f4c7df9c inherit pub_methods_classgrpc_1_1_call_op_set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">FillOps</a> (grpc_op *ops, size_t *nops) <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></td></tr>
+<tr class="memdesc:a886b55145cdad0994ec589b4f4c7df9c inherit pub_methods_classgrpc_1_1_call_op_set"><td class="mdescLeft">&#160;</td><td class="mdescRight">Fills in grpc_op, starting from ops[*nops] and moving upwards. <a href="#a886b55145cdad0994ec589b4f4c7df9c">More...</a><br/></td></tr>
+<tr class="separator:a886b55145cdad0994ec589b4f4c7df9c inherit pub_methods_classgrpc_1_1_call_op_set"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a798d253af317730a5b996a4a55d86274 inherit pub_methods_classgrpc_1_1_call_op_set"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274">set_output_tag</a> (void *return_tag)</td></tr>
+<tr class="separator:a798d253af317730a5b996a4a55d86274 inherit pub_methods_classgrpc_1_1_call_op_set"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_call_op_set_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_call_op_set_interface')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_call_op_set_interface.html">grpc::CallOpSetInterface</a></td></tr>
+<tr class="memitem:ad331a10c0fd65f5a9db680e95682f000 inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000">CallOpSetInterface</a> ()</td></tr>
+<tr class="separator:ad331a10c0fd65f5a9db680e95682f000 inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac1e3a95ce9a1727011b7e7ce76829f0a inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a">set_max_message_size</a> (int max_message_size)</td></tr>
+<tr class="separator:ac1e3a95ce9a1727011b7e7ce76829f0a inherit pub_methods_classgrpc_1_1_call_op_set_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1_completion_queue_tag"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_completion_queue_tag')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1_completion_queue_tag.html">grpc::CompletionQueueTag</a></td></tr>
+<tr class="memitem:a2cbf0212ed795c79f98c3421ed0cb4ab inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">~CompletionQueueTag</a> ()</td></tr>
+<tr class="separator:a2cbf0212ed795c79f98c3421ed0cb4ab inherit pub_methods_classgrpc_1_1_completion_queue_tag"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_attribs_classgrpc_1_1_call_op_set_interface"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classgrpc_1_1_call_op_set_interface')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classgrpc_1_1_call_op_set_interface.html">grpc::CallOpSetInterface</a></td></tr>
+<tr class="memitem:a06354e63efdbbd34fa18270490aaabbf inherit pro_attribs_classgrpc_1_1_call_op_set_interface"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">max_message_size_</a></td></tr>
+<tr class="separator:a06354e63efdbbd34fa18270490aaabbf inherit pro_attribs_classgrpc_1_1_call_op_set_interface"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;class Op1 = CallNoOp&lt;1&gt;, class Op2 = CallNoOp&lt;2&gt;, class Op3 = CallNoOp&lt;3&gt;, class Op4 = CallNoOp&lt;4&gt;, class Op5 = CallNoOp&lt;5&gt;, class Op6 = CallNoOp&lt;6&gt;&gt;<br/>
+class grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</h3>
+
+<p>A <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> that does not post completions to the completion queue. </p>
+<p>Allows hiding some completions that the C core must generate from C++ users. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a0ade5b329d43a4002388bac90a8bbafd"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class Op1 = CallNoOp&lt;1&gt;, class Op2 = CallNoOp&lt;2&gt;, class Op3 = CallNoOp&lt;3&gt;, class Op4 = CallNoOp&lt;4&gt;, class Op5 = CallNoOp&lt;5&gt;, class Op6 = CallNoOp&lt;6&gt;&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_sneaky_call_op_set.html">grpc::SneakyCallOpSet</a>&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;::FinalizeResult </td>
+ <td>(</td>
+ <td class="paramtype">void **&#160;</td>
+ <td class="paramname"><em>tag</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">bool *&#160;</td>
+ <td class="paramname"><em>status</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Reimplemented from <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_status.html b/doc/ref/c++/html/classgrpc_1_1_status.html
new file mode 100644
index 0000000000..2f2170beb9
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_status.html
@@ -0,0 +1,300 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::Status Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_status.html">Status</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-attribs">Static Public Attributes</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::Status Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="status_8h_source.html">status.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a46537b45349a95126a16dcd67b5cf54c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c">Status</a> ()</td></tr>
+<tr class="separator:a46537b45349a95126a16dcd67b5cf54c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8419a0b716f961c8d2d781c65f03def6"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html#a8419a0b716f961c8d2d781c65f03def6">Status</a> (<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a> code, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;details)</td></tr>
+<tr class="separator:a8419a0b716f961c8d2d781c65f03def6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78b50cb074bcd9f1dd50e8f212f7e181"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181">error_code</a> () const </td></tr>
+<tr class="separator:a78b50cb074bcd9f1dd50e8f212f7e181"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a87888a7acefced58302f89a295940f16"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16">error_message</a> () const </td></tr>
+<tr class="separator:a87888a7acefced58302f89a295940f16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1f5b65c54d4e6dd502897e36040714dc"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a> () const </td></tr>
+<tr class="separator:a1f5b65c54d4e6dd502897e36040714dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
+Static Public Attributes</h2></td></tr>
+<tr class="memitem:acbac12f241ad08f449aa1b9086ec7acc"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">OK</a></td></tr>
+<tr class="separator:acbac12f241ad08f449aa1b9086ec7acc"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9994ffe95a0495915d82481c2ec594ab"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classgrpc_1_1_status.html">Status</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab">CANCELLED</a></td></tr>
+<tr class="separator:a9994ffe95a0495915d82481c2ec594ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a46537b45349a95126a16dcd67b5cf54c"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Status::Status </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8419a0b716f961c8d2d781c65f03def6"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::Status::Status </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a>&#160;</td>
+ <td class="paramname"><em>code</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>details</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a78b50cb074bcd9f1dd50e8f212f7e181"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a> grpc::Status::error_code </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a87888a7acefced58302f89a295940f16"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::Status::error_message </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1f5b65c54d4e6dd502897e36040714dc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::Status::ok </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a9994ffe95a0495915d82481c2ec594ab"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="classgrpc_1_1_status.html">Status</a>&amp; grpc::Status::CANCELLED</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acbac12f241ad08f449aa1b9086ec7acc"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">const <a class="el" href="classgrpc_1_1_status.html">Status</a>&amp; grpc::Status::OK</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">static</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="status_8h_source.html">status.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_synchronous_service.html b/doc/ref/c++/html/classgrpc_1_1_synchronous_service.html
new file mode 100644
index 0000000000..54a5a93352
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_synchronous_service.html
@@ -0,0 +1,165 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SynchronousService Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::SynchronousService Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="service__type_8h_source.html">service_type.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a7799f247e0928ff36e32ead579585a05"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05">~SynchronousService</a> ()</td></tr>
+<tr class="separator:a7799f247e0928ff36e32ead579585a05"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad9eb51c9dc0cedfd838c23db47349796"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classgrpc_1_1_rpc_service.html">RpcService</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_synchronous_service.html#ad9eb51c9dc0cedfd838c23db47349796">service</a> ()=0</td></tr>
+<tr class="separator:ad9eb51c9dc0cedfd838c23db47349796"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a7799f247e0928ff36e32ead579585a05"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::SynchronousService::~SynchronousService </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ad9eb51c9dc0cedfd838c23db47349796"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_rpc_service.html">RpcService</a>* grpc::SynchronousService::service </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="service__type_8h_source.html">service_type.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_thread_pool_interface.html b/doc/ref/c++/html/classgrpc_1_1_thread_pool_interface.html
new file mode 100644
index 0000000000..bd82816c7e
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_thread_pool_interface.html
@@ -0,0 +1,168 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::ThreadPoolInterface Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::ThreadPoolInterface Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="thread__pool__interface_8h_source.html">thread_pool_interface.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a74a3380787d9be6e261c2849cdc84538"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538">~ThreadPoolInterface</a> ()</td></tr>
+<tr class="separator:a74a3380787d9be6e261c2849cdc84538"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aac6d805cc95ff8e0c8e366102cdd4dce"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce">Add</a> (const std::function&lt; void()&gt; &amp;callback)=0</td></tr>
+<tr class="separator:aac6d805cc95ff8e0c8e366102cdd4dce"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a74a3380787d9be6e261c2849cdc84538"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual grpc::ThreadPoolInterface::~ThreadPoolInterface </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aac6d805cc95ff8e0c8e366102cdd4dce"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual void grpc::ThreadPoolInterface::Add </td>
+ <td>(</td>
+ <td class="paramtype">const std::function&lt; void()&gt; &amp;&#160;</td>
+ <td class="paramname"><em>callback</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30">grpc::DynamicThreadPool</a>, and <a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026">grpc::FixedSizeThreadPool</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="thread__pool__interface_8h_source.html">thread_pool_interface.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_time_point.html b/doc/ref/c++/html/classgrpc_1_1_time_point.html
new file mode 100644
index 0000000000..64343a7754
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_time_point.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::TimePoint&lt; T &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_time_point.html">TimePoint</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::TimePoint&lt; T &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="time_8h_source.html">time.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aebfa8f327b7609f7e895845b36f060ad"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad">TimePoint</a> (const T &amp;time)</td></tr>
+<tr class="separator:aebfa8f327b7609f7e895845b36f060ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adb76465d3bf0fef9ad5b918f0ea6a9b6"><td class="memItemLeft" align="right" valign="top">gpr_timespec&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">raw_time</a> ()</td></tr>
+<tr class="separator:adb76465d3bf0fef9ad5b918f0ea6a9b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="aebfa8f327b7609f7e895845b36f060ad"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_time_point.html">grpc::TimePoint</a>&lt; T &gt;::<a class="el" href="classgrpc_1_1_time_point.html">TimePoint</a> </td>
+ <td>(</td>
+ <td class="paramtype">const T &amp;&#160;</td>
+ <td class="paramname"><em>time</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="adb76465d3bf0fef9ad5b918f0ea6a9b6"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpr_timespec <a class="el" href="classgrpc_1_1_time_point.html">grpc::TimePoint</a>&lt; T &gt;::raw_time </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="time_8h_source.html">time.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html b/doc/ref/c++/html/classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html
new file mode 100644
index 0000000000..4f29901322
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html
@@ -0,0 +1,166 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::TimePoint&lt; gpr_timespec &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html">TimePoint< gpr_timespec ></a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::TimePoint&lt; gpr_timespec &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="time_8h_source.html">time.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a092aa1afe85bf73a10bf906bb9924007"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007">TimePoint</a> (const gpr_timespec &amp;time)</td></tr>
+<tr class="separator:a092aa1afe85bf73a10bf906bb9924007"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2f952629962fc23855496ac08a70f6e2"><td class="memItemLeft" align="right" valign="top">gpr_timespec&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2">raw_time</a> ()</td></tr>
+<tr class="separator:a2f952629962fc23855496ac08a70f6e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a092aa1afe85bf73a10bf906bb9924007"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_time_point.html">grpc::TimePoint</a>&lt; gpr_timespec &gt;::<a class="el" href="classgrpc_1_1_time_point.html">TimePoint</a> </td>
+ <td>(</td>
+ <td class="paramtype">const gpr_timespec &amp;&#160;</td>
+ <td class="paramname"><em>time</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2f952629962fc23855496ac08a70f6e2"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpr_timespec <a class="el" href="classgrpc_1_1_time_point.html">grpc::TimePoint</a>&lt; gpr_timespec &gt;::raw_time </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="time_8h_source.html">time.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html b/doc/ref/c++/html/classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html
new file mode 100644
index 0000000000..9df2a529ef
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html
@@ -0,0 +1,166 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html">TimePoint< std::chrono::system_clock::time_point ></a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="time_8h_source.html">time.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad4276af3251c142fbe7f161391609d4f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f">TimePoint</a> (const std::chrono::system_clock::time_point &amp;time)</td></tr>
+<tr class="separator:ad4276af3251c142fbe7f161391609d4f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac6d6a7d1e3ed219fff1dcc5961874f93"><td class="memItemLeft" align="right" valign="top">gpr_timespec&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93">raw_time</a> () const </td></tr>
+<tr class="separator:ac6d6a7d1e3ed219fff1dcc5961874f93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ad4276af3251c142fbe7f161391609d4f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_time_point.html">grpc::TimePoint</a>&lt; std::chrono::system_clock::time_point &gt;::<a class="el" href="classgrpc_1_1_time_point.html">TimePoint</a> </td>
+ <td>(</td>
+ <td class="paramtype">const std::chrono::system_clock::time_point &amp;&#160;</td>
+ <td class="paramname"><em>time</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ac6d6a7d1e3ed219fff1dcc5961874f93"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpr_timespec <a class="el" href="classgrpc_1_1_time_point.html">grpc::TimePoint</a>&lt; std::chrono::system_clock::time_point &gt;::raw_time </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="time_8h_source.html">time.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_write_options.html b/doc/ref/c++/html/classgrpc_1_1_write_options.html
new file mode 100644
index 0000000000..06ca54cc65
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_write_options.html
@@ -0,0 +1,427 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::WriteOptions Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::WriteOptions Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p>Per-message write options.
+ <a href="classgrpc_1_1_write_options.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="call_8h_source.html">call.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a6a4e429313200ed6c017c5d306e26e93"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#a6a4e429313200ed6c017c5d306e26e93">WriteOptions</a> ()</td></tr>
+<tr class="separator:a6a4e429313200ed6c017c5d306e26e93"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4d7753bbd8d9d61e2c6d3e49e29be021"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021">WriteOptions</a> (const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;other)</td></tr>
+<tr class="separator:a4d7753bbd8d9d61e2c6d3e49e29be021"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9fc0e51224292b15dcfefec342fa0e02"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02">Clear</a> ()</td></tr>
+<tr class="memdesc:a9fc0e51224292b15dcfefec342fa0e02"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear all flags. <a href="#a9fc0e51224292b15dcfefec342fa0e02">More...</a><br/></td></tr>
+<tr class="separator:a9fc0e51224292b15dcfefec342fa0e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0e047a4f3d159749153bff276880e153"><td class="memItemLeft" align="right" valign="top">gpr_uint32&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153">flags</a> () const </td></tr>
+<tr class="memdesc:a0e047a4f3d159749153bff276880e153"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns raw flags bitset. <a href="#a0e047a4f3d159749153bff276880e153">More...</a><br/></td></tr>
+<tr class="separator:a0e047a4f3d159749153bff276880e153"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afe5f12d1bf9ed01b7a833458dc889b66"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66">set_no_compression</a> ()</td></tr>
+<tr class="memdesc:afe5f12d1bf9ed01b7a833458dc889b66"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets flag for the disabling of compression for the next message write. <a href="#afe5f12d1bf9ed01b7a833458dc889b66">More...</a><br/></td></tr>
+<tr class="separator:afe5f12d1bf9ed01b7a833458dc889b66"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7bc26dd151ed56bc49329ca895fe15e7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7">clear_no_compression</a> ()</td></tr>
+<tr class="memdesc:a7bc26dd151ed56bc49329ca895fe15e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears flag for the disabling of compression for the next message write. <a href="#a7bc26dd151ed56bc49329ca895fe15e7">More...</a><br/></td></tr>
+<tr class="separator:a7bc26dd151ed56bc49329ca895fe15e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:accb16dd92f4001a6d024ffb01178d4bf"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf">get_no_compression</a> () const </td></tr>
+<tr class="memdesc:accb16dd92f4001a6d024ffb01178d4bf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get value for the flag indicating whether compression for the next message write is forcefully disabled. <a href="#accb16dd92f4001a6d024ffb01178d4bf">More...</a><br/></td></tr>
+<tr class="separator:accb16dd92f4001a6d024ffb01178d4bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aecd282a8c7424e4b0c1a5f512c44b8a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8">set_buffer_hint</a> ()</td></tr>
+<tr class="memdesc:aecd282a8c7424e4b0c1a5f512c44b8a8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets flag indicating that the write may be buffered and need not go out on the wire immediately. <a href="#aecd282a8c7424e4b0c1a5f512c44b8a8">More...</a><br/></td></tr>
+<tr class="separator:aecd282a8c7424e4b0c1a5f512c44b8a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a897ba94e51b1f6ead41ade8f92efa89f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f">clear_buffer_hint</a> ()</td></tr>
+<tr class="memdesc:a897ba94e51b1f6ead41ade8f92efa89f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clears flag indicating that the write may be buffered and need not go out on the wire immediately. <a href="#a897ba94e51b1f6ead41ade8f92efa89f">More...</a><br/></td></tr>
+<tr class="separator:a897ba94e51b1f6ead41ade8f92efa89f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58a983a81a17d0b8f3996164f55912ef"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef">get_buffer_hint</a> () const </td></tr>
+<tr class="memdesc:a58a983a81a17d0b8f3996164f55912ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get value for the flag indicating that the write may be buffered and need not go out on the wire immediately. <a href="#a58a983a81a17d0b8f3996164f55912ef">More...</a><br/></td></tr>
+<tr class="separator:a58a983a81a17d0b8f3996164f55912ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abe3d32a3e5879022e7b8f1c6a7533841"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841">operator=</a> (const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;rhs)</td></tr>
+<tr class="separator:abe3d32a3e5879022e7b8f1c6a7533841"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><p>Per-message write options. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a6a4e429313200ed6c017c5d306e26e93"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::WriteOptions::WriteOptions </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4d7753bbd8d9d61e2c6d3e49e29be021"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::WriteOptions::WriteOptions </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>other</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a9fc0e51224292b15dcfefec342fa0e02"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::WriteOptions::Clear </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Clear all flags. </p>
+
+</div>
+</div>
+<a class="anchor" id="a897ba94e51b1f6ead41ade8f92efa89f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; grpc::WriteOptions::clear_buffer_hint </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Clears flag indicating that the write may be buffered and need not go out on the wire immediately. </p>
+<dl class="section see"><dt>See Also</dt><dd>GRPC_WRITE_BUFFER_HINT </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a7bc26dd151ed56bc49329ca895fe15e7"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; grpc::WriteOptions::clear_no_compression </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Clears flag for the disabling of compression for the next message write. </p>
+<dl class="section see"><dt>See Also</dt><dd>GRPC_WRITE_NO_COMPRESS </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="a0e047a4f3d159749153bff276880e153"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">gpr_uint32 grpc::WriteOptions::flags </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Returns raw flags bitset. </p>
+
+</div>
+</div>
+<a class="anchor" id="a58a983a81a17d0b8f3996164f55912ef"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::WriteOptions::get_buffer_hint </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get value for the flag indicating that the write may be buffered and need not go out on the wire immediately. </p>
+<dl class="section see"><dt>See Also</dt><dd>GRPC_WRITE_BUFFER_HINT </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="accb16dd92f4001a6d024ffb01178d4bf"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::WriteOptions::get_no_compression </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td> const</td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Get value for the flag indicating whether compression for the next message write is forcefully disabled. </p>
+<dl class="section see"><dt>See Also</dt><dd>GRPC_WRITE_NO_COMPRESS </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="abe3d32a3e5879022e7b8f1c6a7533841"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; grpc::WriteOptions::operator= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>rhs</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aecd282a8c7424e4b0c1a5f512c44b8a8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; grpc::WriteOptions::set_buffer_hint </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Sets flag indicating that the write may be buffered and need not go out on the wire immediately. </p>
+<dl class="section see"><dt>See Also</dt><dd>GRPC_WRITE_BUFFER_HINT </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="afe5f12d1bf9ed01b7a833458dc889b66"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; grpc::WriteOptions::set_no_compression </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Sets flag for the disabling of compression for the next message write. </p>
+<dl class="section see"><dt>See Also</dt><dd>GRPC_WRITE_NO_COMPRESS </dd></dl>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="call_8h_source.html">call.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1_writer_interface.html b/doc/ref/c++/html/classgrpc_1_1_writer_interface.html
new file mode 100644
index 0000000000..9d8b25ecc8
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1_writer_interface.html
@@ -0,0 +1,210 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::WriterInterface&lt; W &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_writer_interface.html">WriterInterface</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::WriterInterface&lt; W &gt; Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="stream_8h_source.html">stream.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a447d71736fb6e8c6bd21287ecc3a9f75"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a> ()</td></tr>
+<tr class="separator:a447d71736fb6e8c6bd21287ecc3a9f75"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa6b2aeb8957265b62bdc063b48f15d44"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">Write</a> (const W &amp;msg, const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;options)=0</td></tr>
+<tr class="separator:aa6b2aeb8957265b62bdc063b48f15d44"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5ddbce2a74455afea61fc21e16b01c6a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a> (const W &amp;msg)</td></tr>
+<tr class="separator:a5ddbce2a74455afea61fc21e16b01c6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a447d71736fb6e8c6bd21287ecc3a9f75"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface</a>&lt; W &gt;::~<a class="el" href="classgrpc_1_1_writer_interface.html">WriterInterface</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="aa6b2aeb8957265b62bdc063b48f15d44"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">virtual bool <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface</a>&lt; W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a> &amp;&#160;</td>
+ <td class="paramname"><em>options</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+<p>Implemented in <a class="el" href="classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467">grpc::ServerReaderWriter&lt; R, W &gt;</a>, <a class="el" href="classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a">grpc::ServerWriter&lt; W &gt;</a>, <a class="el" href="classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762">grpc::ClientReaderWriter&lt; R, W &gt;</a>, and <a class="el" href="classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36">grpc::ClientWriter&lt; W &gt;</a>.</p>
+
+</div>
+</div>
+<a class="anchor" id="a5ddbce2a74455afea61fc21e16b01c6a"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class W &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool <a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface</a>&lt; W &gt;::Write </td>
+ <td>(</td>
+ <td class="paramtype">const W &amp;&#160;</td>
+ <td class="paramname"><em>msg</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="stream_8h_source.html">stream.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1condition__variable.html b/doc/ref/c++/html/classgrpc_1_1condition__variable.html
new file mode 100644
index 0000000000..4fcdcc8dcf
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1condition__variable.html
@@ -0,0 +1,241 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::condition_variable Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1condition__variable.html">condition_variable</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::condition_variable Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ac254c7b505f7b6e3c5c244f971aef611"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611">condition_variable</a> ()</td></tr>
+<tr class="separator:ac254c7b505f7b6e3c5c244f971aef611"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab96cbd3448680ce017794565847181ca"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca">~condition_variable</a> ()</td></tr>
+<tr class="separator:ab96cbd3448680ce017794565847181ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a58cced6338389e99d7e663ba0ab5aed8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8">wait</a> (<a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt; &amp;mu)</td></tr>
+<tr class="separator:a58cced6338389e99d7e663ba0ab5aed8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:abc49965bc36f319781bb315fff7d9fb3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3">notify_one</a> ()</td></tr>
+<tr class="separator:abc49965bc36f319781bb315fff7d9fb3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a09a9b8a854f939962c6080bd2764dd36"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36">notify_all</a> ()</td></tr>
+<tr class="separator:a09a9b8a854f939962c6080bd2764dd36"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ac254c7b505f7b6e3c5c244f971aef611"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::condition_variable::condition_variable </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab96cbd3448680ce017794565847181ca"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::condition_variable::~condition_variable </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a09a9b8a854f939962c6080bd2764dd36"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::condition_variable::notify_all </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="abc49965bc36f319781bb315fff7d9fb3"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::condition_variable::notify_one </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58cced6338389e99d7e663ba0ab5aed8"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::condition_variable::wait </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1lock__guard.html b/doc/ref/c++/html/classgrpc_1_1lock__guard.html
new file mode 100644
index 0000000000..017b36ba8b
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1lock__guard.html
@@ -0,0 +1,257 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::lock_guard&lt; mutex &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pro-methods">Protected Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::lock_guard&lt; mutex &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad5556ef1ebffe0cf983871fbc61fe264"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264">lock_guard</a> (<a class="el" href="classgrpc_1_1mutex.html">mutex</a> &amp;mu)</td></tr>
+<tr class="separator:ad5556ef1ebffe0cf983871fbc61fe264"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac99f7ed1e7b1e177a20b23f230eaf1c2"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2">~lock_guard</a> ()</td></tr>
+<tr class="separator:ac99f7ed1e7b1e177a20b23f230eaf1c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
+Protected Member Functions</h2></td></tr>
+<tr class="memitem:ac6236e52082bd62d20f17de1625fd649"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649">lock_internal</a> ()</td></tr>
+<tr class="separator:ac6236e52082bd62d20f17de1625fd649"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84bc9261c3b0c0bb3824265c31ce26c5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">unlock_internal</a> ()</td></tr>
+<tr class="separator:a84bc9261c3b0c0bb3824265c31ce26c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a89c9b6aa2256fa5efd92a333d96381d4"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#a89c9b6aa2256fa5efd92a333d96381d4">condition_variable</a></td></tr>
+<tr class="separator:a89c9b6aa2256fa5efd92a333d96381d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ad5556ef1ebffe0cf983871fbc61fe264"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt;::<a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1mutex.html">mutex</a> &amp;&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac99f7ed1e7b1e177a20b23f230eaf1c2"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt;::~<a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a> </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ac6236e52082bd62d20f17de1625fd649"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt;::lock_internal </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a84bc9261c3b0c0bb3824265c31ce26c5"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt;::unlock_internal </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a89c9b6aa2256fa5efd92a333d96381d4"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex&gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1condition__variable.html">condition_variable</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1mutex.html b/doc/ref/c++/html/classgrpc_1_1mutex.html
new file mode 100644
index 0000000000..a4540fead7
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1mutex.html
@@ -0,0 +1,216 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::mutex Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1mutex.html">mutex</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::mutex Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae012e9f1c5cafd9d6f77a9a81d641581"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581">mutex</a> ()</td></tr>
+<tr class="separator:ae012e9f1c5cafd9d6f77a9a81d641581"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a318a9bdff2281779aaea87344d6a3e5a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a">~mutex</a> ()</td></tr>
+<tr class="separator:a318a9bdff2281779aaea87344d6a3e5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a4cfa68eb2ccf47f11c725b6773ff9a5b"><td class="memTemplParams" colspan="2">template&lt;class mutex &gt; </td></tr>
+<tr class="memitem:a4cfa68eb2ccf47f11c725b6773ff9a5b"><td class="memTemplItemLeft" align="right" valign="top">class&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1mutex.html#a4cfa68eb2ccf47f11c725b6773ff9a5b">lock_guard</a></td></tr>
+<tr class="separator:a4cfa68eb2ccf47f11c725b6773ff9a5b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a89c9b6aa2256fa5efd92a333d96381d4"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1mutex.html#a89c9b6aa2256fa5efd92a333d96381d4">condition_variable</a></td></tr>
+<tr class="separator:a89c9b6aa2256fa5efd92a333d96381d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ae012e9f1c5cafd9d6f77a9a81d641581"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::mutex::mutex </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a318a9bdff2281779aaea87344d6a3e5a"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::mutex::~mutex </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Friends And Related Function Documentation</h2>
+<a class="anchor" id="a89c9b6aa2256fa5efd92a333d96381d4"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1condition__variable.html">condition_variable</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4cfa68eb2ccf47f11c725b6773ff9a5b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">friend class <a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">friend</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1thread.html b/doc/ref/c++/html/classgrpc_1_1thread.html
new file mode 100644
index 0000000000..f9ccc3796d
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1thread.html
@@ -0,0 +1,205 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::thread Class Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1thread.html">thread</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::thread Class Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="thd__no__cxx11_8h_source.html">thd_no_cxx11.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a02b103e08092d24bf65e1a7b5b384269"><td class="memTemplParams" colspan="2">template&lt;class T &gt; </td></tr>
+<tr class="memitem:a02b103e08092d24bf65e1a7b5b384269"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">thread</a> (void(T::*fptr)(), T *obj)</td></tr>
+<tr class="separator:a02b103e08092d24bf65e1a7b5b384269"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a821416c0e9319e93ae8b8e5cdaa9f52f"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f">~thread</a> ()</td></tr>
+<tr class="separator:a821416c0e9319e93ae8b8e5cdaa9f52f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2d1d3437f2ff58bb1eacb5417a85c29f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f">join</a> ()</td></tr>
+<tr class="separator:a2d1d3437f2ff58bb1eacb5417a85c29f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a02b103e08092d24bf65e1a7b5b384269"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class T &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::thread::thread </td>
+ <td>(</td>
+ <td class="paramtype">void(T::*)()&#160;</td>
+ <td class="paramname"><em>fptr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">T *&#160;</td>
+ <td class="paramname"><em>obj</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a821416c0e9319e93ae8b8e5cdaa9f52f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::thread::~thread </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="a2d1d3437f2ff58bb1eacb5417a85c29f"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::thread::join </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="thd__no__cxx11_8h_source.html">thd_no_cxx11.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/classgrpc_1_1unique__lock.html b/doc/ref/c++/html/classgrpc_1_1unique__lock.html
new file mode 100644
index 0000000000..2ef2f7d762
--- /dev/null
+++ b/doc/ref/c++/html/classgrpc_1_1unique__lock.html
@@ -0,0 +1,210 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::unique_lock&lt; mutex &gt; Class Template Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1unique__lock.html">unique_lock</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::unique_lock&lt; mutex &gt; Class Template Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ad82b43eea850ccccf7a1682668c3a633"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633">unique_lock</a> (<a class="el" href="classgrpc_1_1mutex.html">mutex</a> &amp;mu)</td></tr>
+<tr class="separator:ad82b43eea850ccccf7a1682668c3a633"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae29c07f1bdca4a39516f3841dac5cb54"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54">lock</a> ()</td></tr>
+<tr class="separator:ae29c07f1bdca4a39516f3841dac5cb54"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af631f112239d5fb5aeff2ed1335e7ccd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd">unlock</a> ()</td></tr>
+<tr class="separator:af631f112239d5fb5aeff2ed1335e7ccd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classgrpc_1_1lock__guard"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1lock__guard')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard&lt; mutex &gt;</a></td></tr>
+<tr class="memitem:ad5556ef1ebffe0cf983871fbc61fe264 inherit pub_methods_classgrpc_1_1lock__guard"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264">lock_guard</a> (<a class="el" href="classgrpc_1_1mutex.html">mutex</a> &amp;mu)</td></tr>
+<tr class="separator:ad5556ef1ebffe0cf983871fbc61fe264 inherit pub_methods_classgrpc_1_1lock__guard"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac99f7ed1e7b1e177a20b23f230eaf1c2 inherit pub_methods_classgrpc_1_1lock__guard"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2">~lock_guard</a> ()</td></tr>
+<tr class="separator:ac99f7ed1e7b1e177a20b23f230eaf1c2 inherit pub_methods_classgrpc_1_1lock__guard"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pro_methods_classgrpc_1_1lock__guard"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classgrpc_1_1lock__guard')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard&lt; mutex &gt;</a></td></tr>
+<tr class="memitem:ac6236e52082bd62d20f17de1625fd649 inherit pro_methods_classgrpc_1_1lock__guard"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649">lock_internal</a> ()</td></tr>
+<tr class="separator:ac6236e52082bd62d20f17de1625fd649 inherit pro_methods_classgrpc_1_1lock__guard"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a84bc9261c3b0c0bb3824265c31ce26c5 inherit pro_methods_classgrpc_1_1lock__guard"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">unlock_internal</a> ()</td></tr>
+<tr class="separator:a84bc9261c3b0c0bb3824265c31ce26c5 inherit pro_methods_classgrpc_1_1lock__guard"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ad82b43eea850ccccf7a1682668c3a633"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1unique__lock.html">grpc::unique_lock</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt;::<a class="el" href="classgrpc_1_1unique__lock.html">unique_lock</a> </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1mutex.html">mutex</a> &amp;&#160;</td>
+ <td class="paramname"><em>mu</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a class="anchor" id="ae29c07f1bdca4a39516f3841dac5cb54"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1unique__lock.html">grpc::unique_lock</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt;::lock </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af631f112239d5fb5aeff2ed1335e7ccd"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class mutex &gt; </div>
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">void <a class="el" href="classgrpc_1_1unique__lock.html">grpc::unique_lock</a>&lt; <a class="el" href="classgrpc_1_1mutex.html">mutex</a> &gt;::unlock </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="sync__no__cxx11_8h_source.html">sync_no_cxx11.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/client__context_8h.html b/doc/ref/c++/html/client__context_8h.html
new file mode 100644
index 0000000000..1764f6fa99
--- /dev/null
+++ b/doc/ref/c++/html/client__context_8h.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/client_context.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">client_context.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;map&gt;</code><br/>
+<code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;string&gt;</code><br/>
+<code>#include &lt;grpc/compression.h&gt;</code><br/>
+<code>#include &lt;grpc/support/log.h&gt;</code><br/>
+<code>#include &lt;grpc/support/time.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="auth__context_8h_source.html">grpc++/auth_context.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc++/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="client__context_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/client__context_8h_source.html b/doc/ref/c++/html/client__context_8h_source.html
new file mode 100644
index 0000000000..13a9f3f6d9
--- /dev/null
+++ b/doc/ref/c++/html/client__context_8h_source.html
@@ -0,0 +1,329 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/client_context.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">client_context.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="client__context_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_CLIENT_CONTEXT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_CLIENT_CONTEXT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;grpc/compression.h&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;grpc/support/log.h&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;grpc/support/time.h&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="auth__context_8h.html">grpc++/auth_context.h</a>&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc++/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">struct </span>grpc_call;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">struct </span>grpc_completion_queue;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">struct </span>census_context;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">class </span>ChannelInterface;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">class </span>CompletionQueue;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">class </span>Credentials;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">class </span>RpcMethod;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader.html"> 60</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_reader.html">ClientReader</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_writer.html"> 62</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_writer.html">ClientWriter</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer.html"> 64</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_reader_writer.html">ClientReaderWriter</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader.html"> 66</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_reader.html">ClientAsyncReader</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_writer.html"> 68</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_writer.html">ClientAsyncWriter</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer.html"> 70</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html"> 74</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a> {</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9">ClientContext</a>();</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html#aeb77ea760faf8f96e775812806c0a3d9">~ClientContext</a>();</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_context.html#a69a026f073ef5934697568d689440bd4">AddMetadata</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; meta_key,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; meta_value);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15"> 82</a></span>&#160; <span class="keyword">const</span> std::multimap&lt;grpc::string, grpc::string&gt;&amp; <a class="code" href="classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15">GetServerInitialMetadata</a>() {</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; GPR_ASSERT(initial_metadata_received_);</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">return</span> recv_initial_metadata_;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; }</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3"> 87</a></span>&#160; <span class="keyword">const</span> std::multimap&lt;grpc::string, grpc::string&gt;&amp; <a class="code" href="classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3">GetServerTrailingMetadata</a>() {</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="comment">// TODO(yangg) check finished</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">return</span> trailing_metadata_;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6"> 93</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6">set_deadline</a>(<span class="keyword">const</span> T&amp; <a class="code" href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e">deadline</a>) {</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classgrpc_1_1_time_point.html">TimePoint&lt;T&gt;</a> deadline_tp(deadline);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; deadline_ = deadline_tp.<a class="code" href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">raw_time</a>();</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor">#ifndef GRPC_CXX0X_NO_CHRONO</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e"> 99</a></span>&#160;<span class="preprocessor"></span> std::chrono::system_clock::time_point <a class="code" href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e">deadline</a>() {</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">Timespec2Timepoint</a>(deadline_);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; }</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor">#endif // !GRPC_CXX0X_NO_CHRONO</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652"> 104</a></span>&#160; gpr_timespec <a class="code" href="classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652">raw_deadline</a>() { <span class="keywordflow">return</span> deadline_; }</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682"> 106</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682">set_authority</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; authority) { authority_ = authority; }</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">// Set credentials for the rpc.</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb"> 109</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb">set_credentials</a>(<span class="keyword">const</span> std::shared_ptr&lt;Credentials&gt;&amp; creds) {</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; creds_ = creds;</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56"> 113</a></span>&#160; grpc_compression_algorithm <a class="code" href="classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56">compression_algorithm</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> compression_algorithm_;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_context.html#a67a71b32afe1d71189aa3a24146ec61d">set_compression_algorithm</a>(grpc_compression_algorithm algorithm);</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; std::shared_ptr&lt;const AuthContext&gt; <a class="code" href="classgrpc_1_1_client_context.html#a02f279bf74e26d7c32d0b18dc73dccea">auth_context</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="comment">// Return the peer uri in a string.</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// WARNING: this value is never authenticated or subject to any security</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="comment">// related code. It must not be used for any authentication related</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="comment">// functionality. Instead, use auth_context.</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="classgrpc_1_1_client_context.html#a905d667d96613e022cd83c13dbedb4c3">peer</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="comment">// Get and set census context</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd"> 128</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd">set_census_context</a>(<span class="keyword">struct</span> <a class="code" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">census_context</a>* ccp) { census_context_ = ccp; }</div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117"> 129</a></span>&#160; <span class="keyword">struct </span><a class="code" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">census_context</a>* <a class="code" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">census_context</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> census_context_; }</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_context.html#abd0f6715c30287b75288015eee628984">TryCancel</a>();</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="comment">// Disallow copy and assign.</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9">ClientContext</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>&amp;);</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>&amp;);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#aa7c3f046b48d55b5a82cbee3fd84faa2"> 138</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a>;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a94ad025954d211da7d27efa58cb2ea91"> 139</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a>;</div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d"> 140</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d">Channel</a>;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#ade499098cc91745c1c87147d7a7fb7bf"> 142</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientReader;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a4498fada67d531d99a8642f47d746544"> 144</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientWriter;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a6d5659aa24edba057895be774e2752ec"> 146</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientReaderWriter;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#af5343062a44a5633b144751e59969237"> 148</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientAsyncReader;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#af3547958eadfaeb18692865bd73999ad"> 150</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientAsyncWriter;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a5c0c96957129933bfe94a299c764eaa7"> 152</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientAsyncReaderWriter;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_context.html#a4b00162a9bd86e07669f2af67f85c73a"> 154</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientAsyncResponseReader;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> InputMessage, <span class="keyword">class</span> OutputMessage&gt;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">friend</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_client_context.html#a4aac0a120f3498d1151460ef89ce8446">BlockingUnaryCall</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel,</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method,</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context,</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keyword">const</span> InputMessage&amp; request,</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; OutputMessage* result);</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; grpc_call* call() { <span class="keywordflow">return</span> call_; }</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordtype">void</span> set_call(grpc_call* call,</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <span class="keyword">const</span> std::shared_ptr&lt;ChannelInterface&gt;&amp; channel);</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; grpc_completion_queue* cq() { <span class="keywordflow">return</span> cq_; }</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordtype">void</span> set_cq(grpc_completion_queue* cq) { cq_ = cq; }</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> authority() { <span class="keywordflow">return</span> authority_; }</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="keywordtype">bool</span> initial_metadata_received_;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; std::shared_ptr&lt;ChannelInterface&gt; channel_;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; grpc_call* call_;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; grpc_completion_queue* cq_;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; gpr_timespec deadline_;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> authority_;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; std::shared_ptr&lt;Credentials&gt; creds_;</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keyword">mutable</span> std::shared_ptr&lt;const AuthContext&gt; auth_context_;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keyword">struct </span><a class="code" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">census_context</a>* census_context_;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt; send_initial_metadata_;</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt; recv_initial_metadata_;</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt; trailing_metadata_;</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; grpc_compression_algorithm compression_algorithm_;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;};</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="preprocessor">#endif // GRPCXX_CLIENT_CONTEXT_H</span></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:70</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_html"><div class="ttname"><a href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a></div><div class="ttdef"><b>Definition:</b> client_context.h:60</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_af29e0113f661e1fbbecc20c268a3be6e"><div class="ttname"><a href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e">grpc::ClientContext::deadline</a></div><div class="ttdeci">std::chrono::system_clock::time_point deadline()</div><div class="ttdef"><b>Definition:</b> client_context.h:99</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_ab2ad079046a7f9e6dba922274e11aaa3"><div class="ttname"><a href="classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3">grpc::ClientContext::GetServerTrailingMetadata</a></div><div class="ttdeci">const std::multimap&lt; grpc::string, grpc::string &gt; &amp; GetServerTrailingMetadata()</div><div class="ttdef"><b>Definition:</b> client_context.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html">grpc::CallOpClientRecvStatus</a></div><div class="ttdef"><b>Definition:</b> call.h:431</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_ad4e16866fee3f6ee5a10efb5be6f4da6"><div class="ttname"><a href="classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6">grpc::ClientContext::set_deadline</a></div><div class="ttdeci">void set_deadline(const T &amp;deadline)</div><div class="ttdef"><b>Definition:</b> client_context.h:93</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a905d667d96613e022cd83c13dbedb4c3"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a905d667d96613e022cd83c13dbedb4c3">grpc::ClientContext::peer</a></div><div class="ttdeci">grpc::string peer() const </div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_html_adb76465d3bf0fef9ad5b918f0ea6a9b6"><div class="ttname"><a href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">grpc::TimePoint::raw_time</a></div><div class="ttdeci">gpr_timespec raw_time()</div><div class="ttdef"><b>Definition:</b> time.h:56</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_html"><div class="ttname"><a href="classgrpc_1_1_time_point.html">grpc::TimePoint</a></div><div class="ttdef"><b>Definition:</b> time.h:53</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_response_reader_html"><div class="ttname"><a href="classgrpc_1_1_client_async_response_reader.html">grpc::ClientAsyncResponseReader</a></div><div class="ttdef"><b>Definition:</b> async_unary_call.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a02f279bf74e26d7c32d0b18dc73dccea"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a02f279bf74e26d7c32d0b18dc73dccea">grpc::ClientContext::auth_context</a></div><div class="ttdeci">std::shared_ptr&lt; const AuthContext &gt; auth_context() const </div></div>
+<div class="ttc" id="auth__context_8h_html"><div class="ttname"><a href="auth__context_8h.html">auth_context.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_acabbcf3c160a0628da8a9274b10f54b9"><div class="ttname"><a href="classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9">grpc::ClientContext::ClientContext</a></div><div class="ttdeci">ClientContext()</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a958acd964fe9feb32bca775c96ad5117"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">grpc::ClientContext::census_context</a></div><div class="ttdeci">struct census_context * census_context() const </div><div class="ttdef"><b>Definition:</b> client_context.h:129</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_abd0f6715c30287b75288015eee628984"><div class="ttname"><a href="classgrpc_1_1_client_context.html#abd0f6715c30287b75288015eee628984">grpc::ClientContext::TryCancel</a></div><div class="ttdeci">void TryCancel()</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a48672c1e42084d2cd6975746b84658dd"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd">grpc::ClientContext::set_census_context</a></div><div class="ttdeci">void set_census_context(struct census_context *ccp)</div><div class="ttdef"><b>Definition:</b> client_context.h:128</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a91691d52182f45043ce9698424d26a56"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56">grpc::ClientContext::compression_algorithm</a></div><div class="ttdeci">grpc_compression_algorithm compression_algorithm() const </div><div class="ttdef"><b>Definition:</b> client_context.h:113</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a4aac0a120f3498d1151460ef89ce8446"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a4aac0a120f3498d1151460ef89ce8446">grpc::ClientContext::BlockingUnaryCall</a></div><div class="ttdeci">friend Status BlockingUnaryCall(ChannelInterface *channel, const RpcMethod &amp;method, ClientContext *context, const InputMessage &amp;request, OutputMessage *result)</div><div class="ttdef"><b>Definition:</b> client_unary_call.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></div><div class="ttdef"><b>Definition:</b> channel_interface.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:68</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a43bb17bbd6ab49face3793e8883c5682"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682">grpc::ClientContext::set_authority</a></div><div class="ttdeci">void set_authority(const grpc::string &amp;authority)</div><div class="ttdef"><b>Definition:</b> client_context.h:106</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a5057cab6d547678dded90c024efab652"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652">grpc::ClientContext::raw_deadline</a></div><div class="ttdeci">gpr_timespec raw_deadline()</div><div class="ttdef"><b>Definition:</b> client_context.h:104</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_ac47342240f21ce36f47485e4ab41a10d"><div class="ttname"><a href="classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d">grpc::ClientContext::Channel</a></div><div class="ttdeci">friend class Channel</div><div class="ttdef"><b>Definition:</b> client_context.h:140</div></div>
+<div class="ttc" id="namespacegrpc_html_a12896f279762d0100669da708d466ec1"><div class="ttname"><a href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">grpc::Timespec2Timepoint</a></div><div class="ttdeci">std::chrono::system_clock::time_point Timespec2Timepoint(gpr_timespec t)</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a971f592cb4c3d4cc4be227c413264d15"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15">grpc::ClientContext::GetServerInitialMetadata</a></div><div class="ttdeci">const std::multimap&lt; grpc::string, grpc::string &gt; &amp; GetServerInitialMetadata()</div><div class="ttdef"><b>Definition:</b> client_context.h:82</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_html"><div class="ttname"><a href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader</a></div><div class="ttdef"><b>Definition:</b> client_context.h:66</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:62</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a67a71b32afe1d71189aa3a24146ec61d"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a67a71b32afe1d71189aa3a24146ec61d">grpc::ClientContext::set_compression_algorithm</a></div><div class="ttdeci">void set_compression_algorithm(grpc_compression_algorithm algorithm)</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html">grpc::CallOpRecvInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:402</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_ac09d9bcb018a58c970adbab7ecd201cb"><div class="ttname"><a href="classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb">grpc::ClientContext::set_credentials</a></div><div class="ttdeci">void set_credentials(const std::shared_ptr&lt; Credentials &gt; &amp;creds)</div><div class="ttdef"><b>Definition:</b> client_context.h:109</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_a69a026f073ef5934697568d689440bd4"><div class="ttname"><a href="classgrpc_1_1_client_context.html#a69a026f073ef5934697568d689440bd4">grpc::ClientContext::AddMetadata</a></div><div class="ttdeci">void AddMetadata(const grpc::string &amp;meta_key, const grpc::string &amp;meta_value)</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html_aeb77ea760faf8f96e775812806c0a3d9"><div class="ttname"><a href="classgrpc_1_1_client_context.html#aeb77ea760faf8f96e775812806c0a3d9">grpc::ClientContext::~ClientContext</a></div><div class="ttdeci">~ClientContext()</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/client__unary__call_8h.html b/doc/ref/c++/html/client__unary__call_8h.html
new file mode 100644
index 0000000000..3914c263af
--- /dev/null
+++ b/doc/ref/c++/html/client__unary__call_8h.html
@@ -0,0 +1,120 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/client_unary_call.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">client_unary_call.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="call_8h_source.html">grpc++/impl/call.h</a>&gt;</code><br/>
+</div>
+<p><a href="client__unary__call_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a35d5687ea2da09f9376f2caa42a1db1b"><td class="memTemplParams" colspan="2">template&lt;class InputMessage , class OutputMessage &gt; </td></tr>
+<tr class="memitem:a35d5687ea2da09f9376f2caa42a1db1b"><td class="memTemplItemLeft" align="right" valign="top">Status&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b">grpc::BlockingUnaryCall</a> (ChannelInterface *channel, const RpcMethod &amp;method, ClientContext *context, const InputMessage &amp;request, OutputMessage *result)</td></tr>
+<tr class="separator:a35d5687ea2da09f9376f2caa42a1db1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/client__unary__call_8h_source.html b/doc/ref/c++/html/client__unary__call_8h_source.html
new file mode 100644
index 0000000000..b65f51f051
--- /dev/null
+++ b/doc/ref/c++/html/client__unary__call_8h_source.html
@@ -0,0 +1,194 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/client_unary_call.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">client_unary_call.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="client__unary__call_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_CLIENT_UNARY_CALL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_CLIENT_UNARY_CALL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="call_8h.html">grpc++/impl/call.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">class </span>ChannelInterface;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">class </span>ClientContext;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span>CompletionQueue;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">class </span>RpcMethod;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment">// Wrapper that performs a blocking unary call</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> InputMessage, <span class="keyword">class</span> OutputMessage&gt;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b"> 51</a></span>&#160;<a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b">BlockingUnaryCall</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context, <span class="keyword">const</span> InputMessage&amp; request,</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; OutputMessage* result) {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> cq;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call(channel-&gt;<a class="code" href="classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0">CreateCall</a>(method, context, &amp;cq));</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet</a>&lt;<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a>, <a class="code" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a>,</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a>, <a class="code" href="classgrpc_1_1_call_op_recv_message.html">CallOpRecvMessage&lt;OutputMessage&gt;</a>,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="classgrpc_1_1_call_op_client_send_close.html">CallOpClientSendClose</a>, <a class="code" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a>&gt; ops;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status = ops.SendMessage(request);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (!status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()) {</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> status;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; }</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; ops.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; ops.RecvInitialMetadata(context);</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; ops.RecvMessage(result);</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; ops.ClientSendClose();</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; ops.ClientRecvStatus(context, &amp;status);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; call.PerformOps(&amp;ops);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; GPR_ASSERT((cq.Pluck(&amp;ops) &amp;&amp; ops.got_message) || !status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>());</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> status;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;}</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_CLIENT_UNARY_CALL_H</span></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html">grpc::CallOpClientRecvStatus</a></div><div class="ttdef"><b>Definition:</b> call.h:431</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html_a9fd365d30961e8e40805a3c8faf276d0"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0">grpc::ChannelInterface::CreateCall</a></div><div class="ttdeci">virtual Call CreateCall(const RpcMethod &amp;method, ClientContext *context, CompletionQueue *cq)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html">grpc::CallOpSendMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:190</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html">grpc::CallOpClientSendClose</a></div><div class="ttdef"><b>Definition:</b> call.h:341</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></div><div class="ttdef"><b>Definition:</b> channel_interface.h:52</div></div>
+<div class="ttc" id="call_8h_html"><div class="ttname"><a href="call_8h.html">call.h</a></div></div>
+<div class="ttc" id="namespacegrpc_html_a35d5687ea2da09f9376f2caa42a1db1b"><div class="ttname"><a href="namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b">grpc::BlockingUnaryCall</a></div><div class="ttdeci">Status BlockingUnaryCall(ChannelInterface *channel, const RpcMethod &amp;method, ClientContext *context, const InputMessage &amp;request, OutputMessage *result)</div><div class="ttdef"><b>Definition:</b> client_unary_call.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a></div><div class="ttdoc">Primary implementaiton of CallOpSetInterface. </div><div class="ttdef"><b>Definition:</b> call.h:506</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_message.html">grpc::CallOpRecvMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:237</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a1f5b65c54d4e6dd502897e36040714dc"><div class="ttname"><a href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">grpc::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html">grpc::CallOpSendInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:159</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html">grpc::CallOpRecvInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:402</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/closed.png b/doc/ref/c++/html/closed.png
new file mode 100644
index 0000000000..98cc2c909d
--- /dev/null
+++ b/doc/ref/c++/html/closed.png
Binary files differ
diff --git a/doc/ref/c++/html/completion__queue_8h.html b/doc/ref/c++/html/completion__queue_8h.html
new file mode 100644
index 0000000000..cf76322cfc
--- /dev/null
+++ b/doc/ref/c++/html/completion__queue_8h.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/completion_queue.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">completion_queue.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;grpc/support/time.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc__library_8h_source.html">grpc++/impl/grpc_library.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc++/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="completion__queue_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_handler.html">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_streaming_handler.html">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html">grpc::CompletionQueueTag</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_completion_queue.html">grpc::ServerCompletionQueue</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/completion__queue_8h_source.html b/doc/ref/c++/html/completion__queue_8h_source.html
new file mode 100644
index 0000000000..5e31ae13c3
--- /dev/null
+++ b/doc/ref/c++/html/completion__queue_8h_source.html
@@ -0,0 +1,307 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/completion_queue.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">completion_queue.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="completion__queue_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_COMPLETION_QUEUE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_COMPLETION_QUEUE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;grpc/support/time.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc__library_8h.html">grpc++/impl/grpc_library.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc++/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">struct </span>grpc_completion_queue;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">class </span>ClientReader;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">class </span>ClientWriter;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">class </span>ClientReaderWriter;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader.html"> 53</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_reader.html">ServerReader</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_writer.html"> 55</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_writer.html">ServerWriter</a>;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader_writer.html"> 57</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a>;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method_handler.html"> 59</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_streaming_handler.html"> 61</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_streaming_handler.html"> 63</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a>;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classgrpc_1_1_bidi_streaming_handler.html"> 65</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server.html">Server</a>;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_builder.html">ServerBuilder</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue_tag.html"> 75</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a> {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab"> 77</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">~CompletionQueueTag</a>() {}</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">// Called prior to returning from Next(), return value</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="comment">// is the status of the operation (return status is the default thing</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// to do)</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">// If this function returns false, the tag is dropped and not returned</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">// from the completion queue</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d">FinalizeResult</a>(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* status) = 0;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;};</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">// grpc_completion_queue wrapper class</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html"> 87</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_grpc_library.html">GrpcLibrary</a> {</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566">CompletionQueue</a>();</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566">CompletionQueue</a>(grpc_completion_queue* take);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0">~CompletionQueue</a>() <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="comment">// Tri-state return for AsyncNext: SHUTDOWN, GOT_EVENT, TIMEOUT</span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04"> 94</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a> { <a class="code" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b">SHUTDOWN</a>, <a class="code" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08">GOT_EVENT</a>, <a class="code" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04">TIMEOUT</a> };</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="comment">// Nonblocking (until deadline) read from queue.</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="comment">// Cannot rely on result of tag or ok if return is TIMEOUT</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4"> 99</a></span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a> <a class="code" href="classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4">AsyncNext</a>(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* ok, <span class="keyword">const</span> T&amp; deadline) {</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classgrpc_1_1_time_point.html">TimePoint&lt;T&gt;</a> deadline_tp(deadline);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> AsyncNextInternal(tag, ok, deadline_tp.<a class="code" href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">raw_time</a>());</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="comment">// Blocking read from queue.</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">// Returns false if the queue is ready for destruction, true if event</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a"> 107</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a">Next</a>(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* ok) {</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">return</span> (AsyncNextInternal(tag, ok, gpr_inf_future(GPR_CLOCK_REALTIME)) !=</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b">SHUTDOWN</a>);</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="comment">// Shutdown has to be called, and the CompletionQueue can only be</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="comment">// destructed when false is returned from Next().</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670">Shutdown</a>();</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b"> 116</a></span>&#160; grpc_completion_queue* <a class="code" href="classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b">cq</a>() { <span class="keywordflow">return</span> cq_; }</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="comment">// Friend synchronous wrappers so that they can access Pluck(), which is</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="comment">// a semi-private API geared towards the synchronous implementation.</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#ade499098cc91745c1c87147d7a7fb7bf"> 122</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientReader;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a4498fada67d531d99a8642f47d746544"> 124</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientWriter;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a6d5659aa24edba057895be774e2752ec"> 126</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ClientReaderWriter;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a4f20e2d049342ae00242bbc8021a44bd"> 128</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerReader;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a2f2dfa831a62c43ad5647a45080488e3"> 130</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerWriter;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a8c0a0d64c582a952c8f16d8eac71c677"> 132</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerReaderWriter;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a76b9bb18b02084e9eaa8c9b99c668676"> 134</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a>;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#ae11583f8aab976055b1feae895d7e12a"> 136</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a>;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c"> 138</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a>;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a9fcf1462b4ea3c6a37e54076aafb93e1"> 140</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a>;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a8c3fa4c066981aae114e41c3f9340144"> 141</a></span>&#160; <span class="keyword">friend</span> class ::grpc::Server;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classgrpc_1_1_completion_queue.html#a6c5b4f4c66d254f341915982a17aac95"> 142</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerContext;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> InputMessage, <span class="keyword">class</span> OutputMessage&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keyword">friend</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_completion_queue.html#a4aac0a120f3498d1151460ef89ce8446">BlockingUnaryCall</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel,</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method,</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context,</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">const</span> InputMessage&amp; request,</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; OutputMessage* result);</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">NextStatus</a> AsyncNextInternal(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* ok, gpr_timespec deadline);</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="comment">// Wraps grpc_completion_queue_pluck.</span></div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="comment">// Cannot be mixed with calls to Next().</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keywordtype">bool</span> Pluck(<a class="code" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>* tag);</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="comment">// Does a single polling pluck on tag</span></div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="keywordtype">void</span> TryPluck(<a class="code" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>* tag);</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; grpc_completion_queue* cq_; <span class="comment">// owned</span></div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;};</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_completion_queue.html"> 162</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> {</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_completion_queue.html#a8c2db91f514d534f06396d90c1b1f2c4"> 164</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_builder.html">ServerBuilder</a>;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>() {}</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;};</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="preprocessor">#endif // GRPCXX_COMPLETION_QUEUE_H</span></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_tag_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue_tag.html">grpc::CompletionQueueTag</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:75</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a4aac0a120f3498d1151460ef89ce8446"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a4aac0a120f3498d1151460ef89ce8446">grpc::CompletionQueue::BlockingUnaryCall</a></div><div class="ttdeci">friend Status BlockingUnaryCall(ChannelInterface *channel, const RpcMethod &amp;method, ClientContext *context, const InputMessage &amp;request, OutputMessage *result)</div><div class="ttdef"><b>Definition:</b> client_unary_call.h:51</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_tag_html_af7b1abfcd9e506d118dfdcf29ce7fe8d"><div class="ttname"><a href="classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d">grpc::CompletionQueueTag::FinalizeResult</a></div><div class="ttdeci">virtual bool FinalizeResult(void **tag, bool *status)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08">grpc::CompletionQueue::GOT_EVENT</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:94</div></div>
+<div class="ttc" id="grpc__library_8h_html"><div class="ttname"><a href="grpc__library_8h.html">grpc_library.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b">grpc::CompletionQueue::SHUTDOWN</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:94</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_html_adb76465d3bf0fef9ad5b918f0ea6a9b6"><div class="ttname"><a href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">grpc::TimePoint::raw_time</a></div><div class="ttdeci">gpr_timespec raw_time()</div><div class="ttdef"><b>Definition:</b> time.h:56</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_html"><div class="ttname"><a href="classgrpc_1_1_time_point.html">grpc::TimePoint</a></div><div class="ttdef"><b>Definition:</b> time.h:53</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a999c317e716d1e74aca2eb050912302b"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b">grpc::CompletionQueue::cq</a></div><div class="ttdeci">grpc_completion_queue * cq()</div><div class="ttdef"><b>Definition:</b> completion_queue.h:116</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_html"><div class="ttname"><a href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:53</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_aa0534391b20562e7e4cdc12daf0e36b0"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0">grpc::CompletionQueue::~CompletionQueue</a></div><div class="ttdeci">~CompletionQueue() GRPC_OVERRIDE</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a86d9810ced694e50f7987ac90b9f8c1a"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a">grpc::CompletionQueue::Next</a></div><div class="ttdeci">bool Next(void **tag, bool *ok)</div><div class="ttdef"><b>Definition:</b> completion_queue.h:107</div></div>
+<div class="ttc" id="classgrpc_1_1_grpc_library_html"><div class="ttname"><a href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></div><div class="ttdef"><b>Definition:</b> grpc_library.h:41</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a290ddf3d96e6d1d5886580e60b0602b4"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4">grpc::CompletionQueue::AsyncNext</a></div><div class="ttdeci">NextStatus AsyncNext(void **tag, bool *ok, const T &amp;deadline)</div><div class="ttdef"><b>Definition:</b> completion_queue.h:99</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_tag_html_a2cbf0212ed795c79f98c3421ed0cb4ab"><div class="ttname"><a href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">grpc::CompletionQueueTag::~CompletionQueueTag</a></div><div class="ttdeci">virtual ~CompletionQueueTag()</div><div class="ttdef"><b>Definition:</b> completion_queue.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_server_html"><div class="ttname"><a href="classgrpc_1_1_server.html">grpc::Server</a></div><div class="ttdef"><b>Definition:</b> server.h:61</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_handler_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a40efddadd9073386fbcb4f46e8325670"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670">grpc::CompletionQueue::Shutdown</a></div><div class="ttdeci">void Shutdown()</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></div><div class="ttdef"><b>Definition:</b> channel_interface.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a6227657fb2f29291f80cd092f9baf572"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">grpc::CompletionQueue::NextStatus</a></div><div class="ttdeci">NextStatus</div><div class="ttdef"><b>Definition:</b> completion_queue.h:94</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_aea987a15a475923e949934e481fe3566"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566">grpc::CompletionQueue::CompletionQueue</a></div><div class="ttdeci">CompletionQueue()</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_server_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_client_streaming_handler_html"><div class="ttname"><a href="classgrpc_1_1_client_streaming_handler.html">grpc::ClientStreamingHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:61</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_server_streaming_handler_html"><div class="ttname"><a href="classgrpc_1_1_server_streaming_handler.html">grpc::ServerStreamingHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:63</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_server_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_server_completion_queue.html">grpc::ServerCompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:162</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_bidi_streaming_handler_html"><div class="ttname"><a href="classgrpc_1_1_bidi_streaming_handler.html">grpc::BidiStreamingHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:65</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html"><div class="ttname"><a href="classgrpc_1_1_server_builder.html">grpc::ServerBuilder</a></div><div class="ttdef"><b>Definition:</b> server_builder.h:54</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html_a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04">grpc::CompletionQueue::TIMEOUT</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:94</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/config_8h.html b/doc/ref/c++/html/config_8h.html
new file mode 100644
index 0000000000..d8438a8409
--- /dev/null
+++ b/doc/ref/c++/html/config_8h.html
@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/config.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">config.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;string&gt;</code><br/>
+</div>
+<p><a href="config_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:ab2216aa6e0ffe505e1ec362a9621a7f9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a>&#160;&#160;&#160;final</td></tr>
+<tr class="separator:ab2216aa6e0ffe505e1ec362a9621a7f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9a884d706be26697c9c892365a3402a9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>&#160;&#160;&#160;override</td></tr>
+<tr class="separator:a9a884d706be26697c9c892365a3402a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af6ef913b6d13d83d79be41d007120992"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config_8h.html#af6ef913b6d13d83d79be41d007120992">GRPC_CUSTOM_STRING</a>&#160;&#160;&#160;std::string</td></tr>
+<tr class="separator:af6ef913b6d13d83d79be41d007120992"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:ab04a87625da3bf85cdaf5e7856b00203"><td class="memItemLeft" align="right" valign="top">typedef std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></td></tr>
+<tr class="separator:ab04a87625da3bf85cdaf5e7856b00203"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="af6ef913b6d13d83d79be41d007120992"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CUSTOM_STRING&#160;&#160;&#160;std::string</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab2216aa6e0ffe505e1ec362a9621a7f9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_FINAL&#160;&#160;&#160;final</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9a884d706be26697c9c892365a3402a9"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_OVERRIDE&#160;&#160;&#160;override</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/config_8h_source.html b/doc/ref/c++/html/config_8h_source.html
new file mode 100644
index 0000000000..d100dba278
--- /dev/null
+++ b/doc/ref/c++/html/config_8h_source.html
@@ -0,0 +1,218 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/config.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">config.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="config_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_CONFIG_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_CONFIG_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#if !defined(GRPC_NO_AUTODETECT_PLATFORM)</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef _MSC_VER</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="comment">// Visual Studio 2010 is 1600.</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#if _MSC_VER &lt; 1600</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#error &quot;gRPC is only supported with Visual Studio starting at 2010&quot;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span><span class="comment">// Visual Studio 2013 is 1800.</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#elif _MSC_VER &lt; 1800</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CXX0X_NO_FINAL 1</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CXX0X_NO_OVERRIDE 1</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CXX0X_NO_CHRONO 1</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CXX0X_NO_THREAD 1</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif // Visual Studio</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#ifndef __clang__</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#ifdef __GNUC__</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor"></span><span class="comment">// nullptr was added in gcc 4.6</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor">#if (__GNUC__ * 100 + __GNUC_MINOR__ &lt; 406)</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CXX0X_NO_NULLPTR 1</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="preprocessor"></span><span class="comment">// final and override were added in gcc 4.7</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#if (__GNUC__ * 100 + __GNUC_MINOR__ &lt; 407)</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CXX0X_NO_FINAL 1</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CXX0X_NO_OVERRIDE 1</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#ifdef GRPC_CXX0X_NO_FINAL</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_FINAL</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9"> 71</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_FINAL final</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#ifdef GRPC_CXX0X_NO_OVERRIDE</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_OVERRIDE</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="config_8h.html#a9a884d706be26697c9c892365a3402a9"> 77</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_OVERRIDE override</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#ifdef GRPC_CXX0X_NO_NULLPTR</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keyword">const</span> <span class="keyword">class </span>{</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keyword">operator</span> T *() <span class="keyword">const</span> {</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span>T *<span class="keyword">&gt;</span>(0);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keyword">operator</span> std::unique_ptr&lt;T&gt;() <span class="keyword">const</span> {</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> std::unique_ptr&lt;T&gt;(<span class="keyword">static_cast&lt;</span>T *<span class="keyword">&gt;</span>(0));</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">operator</span> std::shared_ptr&lt;T&gt;() <span class="keyword">const</span> {</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">return</span> std::shared_ptr&lt;T&gt;(<span class="keyword">static_cast&lt;</span>T *<span class="keyword">&gt;</span>(0));</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; }</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keyword">operator</span> bool()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordtype">void</span> operator&amp;() <span class="keyword">const</span> = <span class="keyword">delete</span>;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;} <span class="keyword">nullptr</span> = {};</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;}</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor">#ifndef GRPC_CUSTOM_STRING</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;string&gt;</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="config_8h.html#af6ef913b6d13d83d79be41d007120992"> 107</a></span>&#160;<span class="preprocessor">#define GRPC_CUSTOM_STRING std::string</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203"> 112</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="config_8h.html#af6ef913b6d13d83d79be41d007120992">GRPC_CUSTOM_STRING</a> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">string</a>;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor">#endif // GRPCXX_CONFIG_H</span></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="config_8h_html_af6ef913b6d13d83d79be41d007120992"><div class="ttname"><a href="config_8h.html#af6ef913b6d13d83d79be41d007120992">GRPC_CUSTOM_STRING</a></div><div class="ttdeci">#define GRPC_CUSTOM_STRING</div><div class="ttdef"><b>Definition:</b> config.h:107</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/config__protobuf_8h.html b/doc/ref/c++/html/config__protobuf_8h.html
new file mode 100644
index 0000000000..89b8f6926b
--- /dev/null
+++ b/doc/ref/c++/html/config__protobuf_8h.html
@@ -0,0 +1,210 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/config_protobuf.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#define-members">Macros</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">config_protobuf.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;google/protobuf/stubs/common.h&gt;</code><br/>
+<code>#include &lt;google/protobuf/message.h&gt;</code><br/>
+<code>#include &lt;google/protobuf/io/coded_stream.h&gt;</code><br/>
+<code>#include &lt;google/protobuf/io/zero_copy_stream.h&gt;</code><br/>
+</div>
+<p><a href="config__protobuf_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacegrpc_1_1protobuf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf.html">grpc::protobuf</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacegrpc_1_1protobuf_1_1io"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html">grpc::protobuf::io</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
+Macros</h2></td></tr>
+<tr class="memitem:a42a6e2b3f439893077e50cdaa72e98f2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2">GRPC_CUSTOM_PROTOBUF_INT64</a>&#160;&#160;&#160;::google::protobuf::int64</td></tr>
+<tr class="separator:a42a6e2b3f439893077e50cdaa72e98f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9dada7a420bf3d91c428fa9699bd2ef3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3">GRPC_CUSTOM_MESSAGE</a>&#160;&#160;&#160;::google::protobuf::Message</td></tr>
+<tr class="separator:a9dada7a420bf3d91c428fa9699bd2ef3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a7630e432db31b2693f8c2be7d3c79ef8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8">GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM</a>&#160;&#160;&#160;::google::protobuf::io::ZeroCopyOutputStream</td></tr>
+<tr class="separator:a7630e432db31b2693f8c2be7d3c79ef8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a1a6610a655f8fd6d36672c729a865ca0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0">GRPC_CUSTOM_ZEROCOPYINPUTSTREAM</a>&#160;&#160;&#160;::google::protobuf::io::ZeroCopyInputStream</td></tr>
+<tr class="separator:a1a6610a655f8fd6d36672c729a865ca0"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adab2e3bf138e8ee14fc7dc7957618d2f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f">GRPC_CUSTOM_CODEDINPUTSTREAM</a>&#160;&#160;&#160;::google::protobuf::io::CodedInputStream</td></tr>
+<tr class="separator:adab2e3bf138e8ee14fc7dc7957618d2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a58557bfd4af54f1c54a6de69ab1fb43c"><td class="memItemLeft" align="right" valign="top">typedef ::google::protobuf::Message&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a></td></tr>
+<tr class="separator:a58557bfd4af54f1c54a6de69ab1fb43c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad614bff24fe4674ca81af74c769a7b32"><td class="memItemLeft" align="right" valign="top">typedef ::google::protobuf::int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32">grpc::protobuf::int64</a></td></tr>
+<tr class="separator:ad614bff24fe4674ca81af74c769a7b32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafcf83341d287d00418952374bc82ce1"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+::google::protobuf::io::ZeroCopyOutputStream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1">grpc::protobuf::io::ZeroCopyOutputStream</a></td></tr>
+<tr class="separator:aafcf83341d287d00418952374bc82ce1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae16bb38d6b730de308f0be4eb43931b4"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+::google::protobuf::io::ZeroCopyInputStream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4">grpc::protobuf::io::ZeroCopyInputStream</a></td></tr>
+<tr class="separator:ae16bb38d6b730de308f0be4eb43931b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8be5a5d13d5471daee11dd8203973bf3"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+::google::protobuf::io::CodedInputStream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3">grpc::protobuf::io::CodedInputStream</a></td></tr>
+<tr class="separator:a8be5a5d13d5471daee11dd8203973bf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Macro Definition Documentation</h2>
+<a class="anchor" id="adab2e3bf138e8ee14fc7dc7957618d2f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CUSTOM_CODEDINPUTSTREAM&#160;&#160;&#160;::google::protobuf::io::CodedInputStream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9dada7a420bf3d91c428fa9699bd2ef3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CUSTOM_MESSAGE&#160;&#160;&#160;::google::protobuf::Message</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a42a6e2b3f439893077e50cdaa72e98f2"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CUSTOM_PROTOBUF_INT64&#160;&#160;&#160;::google::protobuf::int64</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a1a6610a655f8fd6d36672c729a865ca0"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CUSTOM_ZEROCOPYINPUTSTREAM&#160;&#160;&#160;::google::protobuf::io::ZeroCopyInputStream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7630e432db31b2693f8c2be7d3c79ef8"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">#define GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM&#160;&#160;&#160;::google::protobuf::io::ZeroCopyOutputStream</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/config__protobuf_8h_source.html b/doc/ref/c++/html/config__protobuf_8h_source.html
new file mode 100644
index 0000000000..618804b277
--- /dev/null
+++ b/doc/ref/c++/html/config__protobuf_8h_source.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/config_protobuf.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">config_protobuf.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="config__protobuf_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_CONFIG_PROTOBUF_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_CONFIG_PROTOBUF_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#ifndef GRPC_CUSTOM_PROTOBUF_INT64</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;google/protobuf/stubs/common.h&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2"> 39</a></span>&#160;<span class="preprocessor">#define GRPC_CUSTOM_PROTOBUF_INT64 ::google::protobuf::int64</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#ifndef GRPC_CUSTOM_MESSAGE</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;google/protobuf/message.h&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3"> 44</a></span>&#160;<span class="preprocessor">#define GRPC_CUSTOM_MESSAGE ::google::protobuf::Message</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifndef GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;google/protobuf/io/coded_stream.h&gt;</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#include &lt;google/protobuf/io/zero_copy_stream.h&gt;</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8"> 50</a></span>&#160;<span class="preprocessor">#define GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM \</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor"> ::google::protobuf::io::ZeroCopyOutputStream</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0"> 52</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CUSTOM_ZEROCOPYINPUTSTREAM \</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor"> ::google::protobuf::io::ZeroCopyInputStream</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f"> 54</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_CUSTOM_CODEDINPUTSTREAM ::google::protobuf::io::CodedInputStream</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1protobuf.html"> 58</a></span>&#160;<span class="keyword">namespace </span>protobuf {</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c"> 60</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3">GRPC_CUSTOM_MESSAGE</a> <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32"> 61</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2">GRPC_CUSTOM_PROTOBUF_INT64</a> <a class="code" href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32">int64</a>;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1protobuf_1_1io.html"> 63</a></span>&#160;<span class="keyword">namespace </span>io {</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1"> 64</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8">GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM</a> <a class="code" href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1">ZeroCopyOutputStream</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4"> 65</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0">GRPC_CUSTOM_ZEROCOPYINPUTSTREAM</a> <a class="code" href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4">ZeroCopyInputStream</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3"> 66</a></span>&#160;<span class="keyword">typedef</span> <a class="code" href="config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f">GRPC_CUSTOM_CODEDINPUTSTREAM</a> <a class="code" href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3">CodedInputStream</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;} <span class="comment">// namespace io</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;} <span class="comment">// namespace protobuf</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="preprocessor">#endif // GRPCXX_CONFIG_PROTOBUF_H</span></div>
+<div class="ttc" id="config__protobuf_8h_html_a9dada7a420bf3d91c428fa9699bd2ef3"><div class="ttname"><a href="config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3">GRPC_CUSTOM_MESSAGE</a></div><div class="ttdeci">#define GRPC_CUSTOM_MESSAGE</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:44</div></div>
+<div class="ttc" id="config__protobuf_8h_html_adab2e3bf138e8ee14fc7dc7957618d2f"><div class="ttname"><a href="config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f">GRPC_CUSTOM_CODEDINPUTSTREAM</a></div><div class="ttdeci">#define GRPC_CUSTOM_CODEDINPUTSTREAM</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:54</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_1_1io_html_ae16bb38d6b730de308f0be4eb43931b4"><div class="ttname"><a href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4">grpc::protobuf::io::ZeroCopyInputStream</a></div><div class="ttdeci">::google::protobuf::io::ZeroCopyInputStream ZeroCopyInputStream</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:65</div></div>
+<div class="ttc" id="config__protobuf_8h_html_a42a6e2b3f439893077e50cdaa72e98f2"><div class="ttname"><a href="config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2">GRPC_CUSTOM_PROTOBUF_INT64</a></div><div class="ttdeci">#define GRPC_CUSTOM_PROTOBUF_INT64</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:39</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_html_ad614bff24fe4674ca81af74c769a7b32"><div class="ttname"><a href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32">grpc::protobuf::int64</a></div><div class="ttdeci">::google::protobuf::int64 int64</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:61</div></div>
+<div class="ttc" id="config__protobuf_8h_html_a1a6610a655f8fd6d36672c729a865ca0"><div class="ttname"><a href="config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0">GRPC_CUSTOM_ZEROCOPYINPUTSTREAM</a></div><div class="ttdeci">#define GRPC_CUSTOM_ZEROCOPYINPUTSTREAM</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:52</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_1_1io_html_aafcf83341d287d00418952374bc82ce1"><div class="ttname"><a href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1">grpc::protobuf::io::ZeroCopyOutputStream</a></div><div class="ttdeci">::google::protobuf::io::ZeroCopyOutputStream ZeroCopyOutputStream</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:64</div></div>
+<div class="ttc" id="config__protobuf_8h_html_a7630e432db31b2693f8c2be7d3c79ef8"><div class="ttname"><a href="config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8">GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM</a></div><div class="ttdeci">#define GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:50</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_html_a58557bfd4af54f1c54a6de69ab1fb43c"><div class="ttname"><a href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a></div><div class="ttdeci">::google::protobuf::Message Message</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:60</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_1_1io_html_a8be5a5d13d5471daee11dd8203973bf3"><div class="ttname"><a href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3">grpc::protobuf::io::CodedInputStream</a></div><div class="ttdeci">::google::protobuf::io::CodedInputStream CodedInputStream</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:66</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/create__channel_8h.html b/doc/ref/c++/html/create__channel_8h.html
new file mode 100644
index 0000000000..459c413838
--- /dev/null
+++ b/doc/ref/c++/html/create__channel_8h.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/create_channel.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">create_channel.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="credentials_8h_source.html">grpc++/credentials.h</a>&gt;</code><br/>
+</div>
+<p><a href="create__channel_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad56350897572898b62a33e384c5e4a59"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; ChannelInterface &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ad56350897572898b62a33e384c5e4a59">grpc::CreateChannel</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;target, const std::shared_ptr&lt; Credentials &gt; &amp;creds, const ChannelArguments &amp;args)</td></tr>
+<tr class="separator:ad56350897572898b62a33e384c5e4a59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/create__channel_8h_source.html b/doc/ref/c++/html/create__channel_8h_source.html
new file mode 100644
index 0000000000..87761ae469
--- /dev/null
+++ b/doc/ref/c++/html/create__channel_8h_source.html
@@ -0,0 +1,157 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/create_channel.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">create_channel.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="create__channel_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_CREATE_CHANNEL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_CREATE_CHANNEL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="credentials_8h.html">grpc++/credentials.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">class </span>ChannelArguments;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">class </span>ChannelInterface;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">// If creds does not hold an object or is invalid, a lame channel is returned.</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;std::shared_ptr&lt;ChannelInterface&gt; <a class="code" href="namespacegrpc.html#ad56350897572898b62a33e384c5e4a59">CreateChannel</a>(</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; target, <span class="keyword">const</span> std::shared_ptr&lt;Credentials&gt;&amp; creds,</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">const</span> ChannelArguments&amp; args);</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#endif // GRPCXX_CREATE_CHANNEL_H</span></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="credentials_8h_html"><div class="ttname"><a href="credentials_8h.html">credentials.h</a></div></div>
+<div class="ttc" id="namespacegrpc_html_ad56350897572898b62a33e384c5e4a59"><div class="ttname"><a href="namespacegrpc.html#ad56350897572898b62a33e384c5e4a59">grpc::CreateChannel</a></div><div class="ttdeci">std::shared_ptr&lt; ChannelInterface &gt; CreateChannel(const grpc::string &amp;target, const std::shared_ptr&lt; Credentials &gt; &amp;creds, const ChannelArguments &amp;args)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/credentials_8h.html b/doc/ref/c++/html/credentials_8h.html
new file mode 100644
index 0000000000..540891300d
--- /dev/null
+++ b/doc/ref/c++/html/credentials_8h.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/credentials.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">credentials.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc__library_8h_source.html">grpc++/impl/grpc_library.h</a>&gt;</code><br/>
+</div>
+<p><a href="credentials_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_credentials.html">grpc::Credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_credentials_options.html">grpc::SslCredentialsOptions</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a63d3b2c5cb11f48742da0d245b0771d3"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3">grpc::GoogleDefaultCredentials</a> ()</td></tr>
+<tr class="separator:a63d3b2c5cb11f48742da0d245b0771d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adeb675883da0c9ad8ae4dd38214c3f16"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16">grpc::SslCredentials</a> (const SslCredentialsOptions &amp;options)</td></tr>
+<tr class="separator:adeb675883da0c9ad8ae4dd38214c3f16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a485ca55548022e260806c32d74095c8c"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a485ca55548022e260806c32d74095c8c">grpc::ComputeEngineCredentials</a> ()</td></tr>
+<tr class="separator:a485ca55548022e260806c32d74095c8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2624b99e948624865a346311a613848"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#af2624b99e948624865a346311a613848">grpc::ServiceAccountCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;json_key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;scope, long token_lifetime_seconds)</td></tr>
+<tr class="separator:af2624b99e948624865a346311a613848"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5802d0b8e29f4937281c57bbe07f3517"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517">grpc::ServiceAccountJWTAccessCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;json_key, long token_lifetime_seconds)</td></tr>
+<tr class="separator:a5802d0b8e29f4937281c57bbe07f3517"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af69bf38a7cfbd24e127deb86d50dc41d"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d">grpc::RefreshTokenCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;json_refresh_token)</td></tr>
+<tr class="separator:af69bf38a7cfbd24e127deb86d50dc41d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a08189bab0ce54afb01754bd92ebd7f"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f">grpc::AccessTokenCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;access_token)</td></tr>
+<tr class="separator:a2a08189bab0ce54afb01754bd92ebd7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78c4ecc2e69303f203fd67fd272b6c96"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96">grpc::IAMCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;authorization_token, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;authority_selector)</td></tr>
+<tr class="separator:a78c4ecc2e69303f203fd67fd272b6c96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ffe059f3158d41d0e268fd375a0815c"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c">grpc::CompositeCredentials</a> (const std::shared_ptr&lt; Credentials &gt; &amp;creds1, const std::shared_ptr&lt; Credentials &gt; &amp;creds2)</td></tr>
+<tr class="separator:a0ffe059f3158d41d0e268fd375a0815c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7d08c50ff1dd9a368a9ff8191f855c3"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; Credentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3">grpc::InsecureCredentials</a> ()</td></tr>
+<tr class="separator:ab7d08c50ff1dd9a368a9ff8191f855c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/credentials_8h_source.html b/doc/ref/c++/html/credentials_8h_source.html
new file mode 100644
index 0000000000..91c9c4f57d
--- /dev/null
+++ b/doc/ref/c++/html/credentials_8h_source.html
@@ -0,0 +1,270 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/credentials.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">credentials.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="credentials_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_CREDENTIALS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_CREDENTIALS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc__library_8h.html">grpc++/impl/grpc_library.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">class </span>ChannelArguments;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">class </span>ChannelInterface;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">class </span>SecureCredentials;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classgrpc_1_1_credentials.html"> 47</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_credentials.html">Credentials</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_grpc_library.html">GrpcLibrary</a> {</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="classgrpc_1_1_credentials.html#af4e8a65a6cee2b847e11134671c213f2">~Credentials</a>() <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_credentials.html#a2b3162e0dbb4530ac1c4b81a0339b1e1">ApplyToCall</a>(grpc_call* call) = 0;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">friend</span> std::shared_ptr&lt;Credentials&gt; <a class="code" href="classgrpc_1_1_credentials.html#a319db47fafb1868e66fd34b8bc084f3f">CompositeCredentials</a>(</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">const</span> std::shared_ptr&lt;Credentials&gt;&amp; creds1,</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">const</span> std::shared_ptr&lt;Credentials&gt;&amp; creds2);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">virtual</span> SecureCredentials* <a class="code" href="classgrpc_1_1_credentials.html#aefc960d2b52b15f2561946e0f840874f">AsSecureCredentials</a>() = 0;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">friend</span> std::shared_ptr&lt;ChannelInterface&gt; <a class="code" href="classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69">CreateChannel</a>(</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; target, <span class="keyword">const</span> std::shared_ptr&lt;Credentials&gt;&amp; creds,</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a>&amp; args);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">virtual</span> std::shared_ptr&lt;ChannelInterface&gt; <a class="code" href="classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69">CreateChannel</a>(</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; target, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a>&amp; args) = 0;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;};</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="comment">// Options used to build SslCredentials</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="comment">// pem_roots_cert is the buffer containing the PEM encoding of the server root</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment">// certificates. If this parameter is empty, the default roots will be used.</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">// pem_private_key is the buffer containing the PEM encoding of the client&#39;s</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">// private key. This parameter can be empty if the client does not have a</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">// private key.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">// pem_cert_chain is the buffer containing the PEM encoding of the client&#39;s</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment">// certificate chain. This parameter can be empty if the client does not have</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">// a certificate chain.</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_credentials_options.html"> 77</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc_1_1_ssl_credentials_options.html">SslCredentialsOptions</a> {</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869"> 78</a></span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869">pem_root_certs</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e"> 79</a></span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e">pem_private_key</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b"> 80</a></span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b">pem_cert_chain</a>;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;};</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment">// Factories for building different types of Credentials</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment">// The functions may return empty shared_ptr when credentials cannot be created.</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment">// If a Credentials pointer is returned, it can still be invalid when used to</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">// create a channel. A lame channel will be created then and all rpcs will</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">// fail on it.</span></div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment">// Builds credentials with reasonable defaults.</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3">GoogleDefaultCredentials</a>();</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment">// Builds SSL Credentials given SSL specific options</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16">SslCredentials</a>(</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc_1_1_ssl_credentials_options.html">SslCredentialsOptions</a>&amp; options);</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment">// Builds credentials for use when running in GCE</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#a485ca55548022e260806c32d74095c8c">ComputeEngineCredentials</a>();</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment">// Builds service account credentials.</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment">// json_key is the JSON key string containing the client&#39;s private key.</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment">// scope is a space-delimited list of the requested permissions.</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment">// token_lifetime_seconds is the lifetime in seconds of each token acquired</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">// through this service account credentials. It should be positive and should</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">// not exceed grpc_max_auth_token_lifetime or will be cropped to this value.</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#af2624b99e948624865a346311a613848">ServiceAccountCredentials</a>(</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; json_key, <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; scope,</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">long</span> token_lifetime_seconds);</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment">// Builds Service Account JWT Access credentials.</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">// json_key is the JSON key string containing the client&#39;s private key.</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment">// token_lifetime_seconds is the lifetime in seconds of each Json Web Token</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment">// (JWT) created with this credentials. It should not exceed</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment">// grpc_max_auth_token_lifetime or will be cropped to this value.</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517">ServiceAccountJWTAccessCredentials</a>(</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; json_key, <span class="keywordtype">long</span> token_lifetime_seconds);</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment">// Builds refresh token credentials.</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">// json_refresh_token is the JSON string containing the refresh token along</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment">// with a client_id and client_secret.</span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d">RefreshTokenCredentials</a>(</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; json_refresh_token);</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment">// Builds access token credentials.</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">// access_token is an oauth2 access token that was fetched using an out of band</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment">// mechanism.</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f">AccessTokenCredentials</a>(</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; access_token);</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">// Builds IAM credentials.</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96">IAMCredentials</a>(</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; authorization_token,</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; authority_selector);</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment">// Combines two credentials objects into a composite credentials</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c">CompositeCredentials</a>(</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keyword">const</span> std::shared_ptr&lt;Credentials&gt;&amp; creds1,</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">const</span> std::shared_ptr&lt;Credentials&gt;&amp; creds2);</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment">// Credentials for an unencrypted, unauthenticated channel</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;std::shared_ptr&lt;Credentials&gt; <a class="code" href="namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3">InsecureCredentials</a>();</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="preprocessor">#endif // GRPCXX_CREDENTIALS_H</span></div>
+<div class="ttc" id="namespacegrpc_html_adeb675883da0c9ad8ae4dd38214c3f16"><div class="ttname"><a href="namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16">grpc::SslCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; SslCredentials(const SslCredentialsOptions &amp;options)</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_arguments_html"><div class="ttname"><a href="classgrpc_1_1_channel_arguments.html">grpc::ChannelArguments</a></div><div class="ttdef"><b>Definition:</b> channel_arguments.h:52</div></div>
+<div class="ttc" id="namespacegrpc_html_a5802d0b8e29f4937281c57bbe07f3517"><div class="ttname"><a href="namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517">grpc::ServiceAccountJWTAccessCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; ServiceAccountJWTAccessCredentials(const grpc::string &amp;json_key, long token_lifetime_seconds)</div></div>
+<div class="ttc" id="namespacegrpc_html_af2624b99e948624865a346311a613848"><div class="ttname"><a href="namespacegrpc.html#af2624b99e948624865a346311a613848">grpc::ServiceAccountCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; ServiceAccountCredentials(const grpc::string &amp;json_key, const grpc::string &amp;scope, long token_lifetime_seconds)</div></div>
+<div class="ttc" id="grpc__library_8h_html"><div class="ttname"><a href="grpc__library_8h.html">grpc_library.h</a></div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_credentials_html_af4e8a65a6cee2b847e11134671c213f2"><div class="ttname"><a href="classgrpc_1_1_credentials.html#af4e8a65a6cee2b847e11134671c213f2">grpc::Credentials::~Credentials</a></div><div class="ttdeci">~Credentials() GRPC_OVERRIDE</div></div>
+<div class="ttc" id="namespacegrpc_html_a2a08189bab0ce54afb01754bd92ebd7f"><div class="ttname"><a href="namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f">grpc::AccessTokenCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; AccessTokenCredentials(const grpc::string &amp;access_token)</div></div>
+<div class="ttc" id="classgrpc_1_1_credentials_html_a2b3162e0dbb4530ac1c4b81a0339b1e1"><div class="ttname"><a href="classgrpc_1_1_credentials.html#a2b3162e0dbb4530ac1c4b81a0339b1e1">grpc::Credentials::ApplyToCall</a></div><div class="ttdeci">virtual bool ApplyToCall(grpc_call *call)=0</div></div>
+<div class="ttc" id="namespacegrpc_html_a485ca55548022e260806c32d74095c8c"><div class="ttname"><a href="namespacegrpc.html#a485ca55548022e260806c32d74095c8c">grpc::ComputeEngineCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; ComputeEngineCredentials()</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_credentials_options_html_a0ce1730020e18d04b6af48c88e069869"><div class="ttname"><a href="structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869">grpc::SslCredentialsOptions::pem_root_certs</a></div><div class="ttdeci">grpc::string pem_root_certs</div><div class="ttdef"><b>Definition:</b> credentials.h:78</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_credentials_options_html"><div class="ttname"><a href="structgrpc_1_1_ssl_credentials_options.html">grpc::SslCredentialsOptions</a></div><div class="ttdef"><b>Definition:</b> credentials.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_grpc_library_html"><div class="ttname"><a href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></div><div class="ttdef"><b>Definition:</b> grpc_library.h:41</div></div>
+<div class="ttc" id="classgrpc_1_1_credentials_html_aefc960d2b52b15f2561946e0f840874f"><div class="ttname"><a href="classgrpc_1_1_credentials.html#aefc960d2b52b15f2561946e0f840874f">grpc::Credentials::AsSecureCredentials</a></div><div class="ttdeci">virtual SecureCredentials * AsSecureCredentials()=0</div></div>
+<div class="ttc" id="namespacegrpc_html_af69bf38a7cfbd24e127deb86d50dc41d"><div class="ttname"><a href="namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d">grpc::RefreshTokenCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; RefreshTokenCredentials(const grpc::string &amp;json_refresh_token)</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_credentials_options_html_a01015d8ec7dbf49f2ac3cd21f21d383b"><div class="ttname"><a href="structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b">grpc::SslCredentialsOptions::pem_cert_chain</a></div><div class="ttdeci">grpc::string pem_cert_chain</div><div class="ttdef"><b>Definition:</b> credentials.h:80</div></div>
+<div class="ttc" id="classgrpc_1_1_credentials_html"><div class="ttname"><a href="classgrpc_1_1_credentials.html">grpc::Credentials</a></div><div class="ttdef"><b>Definition:</b> credentials.h:47</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_credentials_options_html_a5b661f8daf02db7283774e0fb9a8979e"><div class="ttname"><a href="structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e">grpc::SslCredentialsOptions::pem_private_key</a></div><div class="ttdeci">grpc::string pem_private_key</div><div class="ttdef"><b>Definition:</b> credentials.h:79</div></div>
+<div class="ttc" id="classgrpc_1_1_credentials_html_a6cd496f9dd7e19b5bdbafaa41036fe69"><div class="ttname"><a href="classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69">grpc::Credentials::CreateChannel</a></div><div class="ttdeci">friend std::shared_ptr&lt; ChannelInterface &gt; CreateChannel(const grpc::string &amp;target, const std::shared_ptr&lt; Credentials &gt; &amp;creds, const ChannelArguments &amp;args)</div></div>
+<div class="ttc" id="namespacegrpc_html_a63d3b2c5cb11f48742da0d245b0771d3"><div class="ttname"><a href="namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3">grpc::GoogleDefaultCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; GoogleDefaultCredentials()</div></div>
+<div class="ttc" id="classgrpc_1_1_credentials_html_a319db47fafb1868e66fd34b8bc084f3f"><div class="ttname"><a href="classgrpc_1_1_credentials.html#a319db47fafb1868e66fd34b8bc084f3f">grpc::Credentials::CompositeCredentials</a></div><div class="ttdeci">friend std::shared_ptr&lt; Credentials &gt; CompositeCredentials(const std::shared_ptr&lt; Credentials &gt; &amp;creds1, const std::shared_ptr&lt; Credentials &gt; &amp;creds2)</div></div>
+<div class="ttc" id="namespacegrpc_html_ab7d08c50ff1dd9a368a9ff8191f855c3"><div class="ttname"><a href="namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3">grpc::InsecureCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; InsecureCredentials()</div></div>
+<div class="ttc" id="namespacegrpc_html_a0ffe059f3158d41d0e268fd375a0815c"><div class="ttname"><a href="namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c">grpc::CompositeCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; CompositeCredentials(const std::shared_ptr&lt; Credentials &gt; &amp;creds1, const std::shared_ptr&lt; Credentials &gt; &amp;creds2)</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="namespacegrpc_html_a78c4ecc2e69303f203fd67fd272b6c96"><div class="ttname"><a href="namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96">grpc::IAMCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; Credentials &gt; IAMCredentials(const grpc::string &amp;authorization_token, const grpc::string &amp;authority_selector)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/dir_ac8b245a5921095c43c106649fd7bc4b.html b/doc/ref/c++/html/dir_ac8b245a5921095c43c106649fd7bc4b.html
new file mode 100644
index 0000000000..d67f0f6c2a
--- /dev/null
+++ b/doc/ref/c++/html/dir_ac8b245a5921095c43c106649fd7bc4b.html
@@ -0,0 +1,128 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">impl Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:call_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="call_8h.html">call.h</a> <a href="call_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:client__unary__call_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__unary__call_8h.html">client_unary_call.h</a> <a href="client__unary__call_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:grpc__library_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="grpc__library_8h.html">grpc_library.h</a> <a href="grpc__library_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:internal__stub_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="internal__stub_8h.html">internal_stub.h</a> <a href="internal__stub_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:proto__utils_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="proto__utils_8h.html">proto_utils.h</a> <a href="proto__utils_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rpc__method_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__method_8h.html">rpc_method.h</a> <a href="rpc__method_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:rpc__service__method_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="rpc__service__method_8h.html">rpc_service_method.h</a> <a href="rpc__service__method_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:serialization__traits_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="serialization__traits_8h.html">serialization_traits.h</a> <a href="serialization__traits_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:service__type_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="service__type_8h.html">service_type.h</a> <a href="service__type_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync_8h.html">sync.h</a> <a href="sync_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync__cxx11_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__cxx11_8h.html">sync_cxx11.h</a> <a href="sync__cxx11_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:sync__no__cxx11_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="sync__no__cxx11_8h.html">sync_no_cxx11.h</a> <a href="sync__no__cxx11_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd_8h.html">thd.h</a> <a href="thd_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd__cxx11_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd__cxx11_8h.html">thd_cxx11.h</a> <a href="thd__cxx11_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thd__no__cxx11_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thd__no__cxx11_8h.html">thd_no_cxx11.h</a> <a href="thd__no__cxx11_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/dir_d44c64559bbebec7f509842c48db8b23.html b/doc/ref/c++/html/dir_d44c64559bbebec7f509842c48db8b23.html
new file mode 100644
index 0000000000..3986c17d5b
--- /dev/null
+++ b/doc/ref/c++/html/dir_d44c64559bbebec7f509842c48db8b23.html
@@ -0,0 +1,100 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">include Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_f1b2ab2a88927c1e950e43c1cf4b634b"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/dir_f1b2ab2a88927c1e950e43c1cf4b634b.html b/doc/ref/c++/html/dir_f1b2ab2a88927c1e950e43c1cf4b634b.html
new file mode 100644
index 0000000000..08cde217bc
--- /dev/null
+++ b/doc/ref/c++/html/dir_f1b2ab2a88927c1e950e43c1cf4b634b.html
@@ -0,0 +1,155 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++ Directory Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc++ Directory Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="subdirs"></a>
+Directories</h2></td></tr>
+<tr class="memitem:dir_ac8b245a5921095c43c106649fd7bc4b"><td class="memItemLeft" align="right" valign="top">directory &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
+Files</h2></td></tr>
+<tr class="memitem:async__generic__service_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="async__generic__service_8h.html">async_generic_service.h</a> <a href="async__generic__service_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:async__unary__call_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="async__unary__call_8h.html">async_unary_call.h</a> <a href="async__unary__call_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:auth__context_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="auth__context_8h.html">auth_context.h</a> <a href="auth__context_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:auth__property__iterator_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="auth__property__iterator_8h.html">auth_property_iterator.h</a> <a href="auth__property__iterator_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:byte__buffer_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="byte__buffer_8h.html">byte_buffer.h</a> <a href="byte__buffer_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__arguments_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__arguments_8h.html">channel_arguments.h</a> <a href="channel__arguments_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:channel__interface_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="channel__interface_8h.html">channel_interface.h</a> <a href="channel__interface_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:client__context_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="client__context_8h.html">client_context.h</a> <a href="client__context_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:completion__queue_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="completion__queue_8h.html">completion_queue.h</a> <a href="completion__queue_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:config_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config_8h.html">config.h</a> <a href="config_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:config__protobuf_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="config__protobuf_8h.html">config_protobuf.h</a> <a href="config__protobuf_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:create__channel_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="create__channel_8h.html">create_channel.h</a> <a href="create__channel_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:credentials_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="credentials_8h.html">credentials.h</a> <a href="credentials_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:dynamic__thread__pool_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="dynamic__thread__pool_8h.html">dynamic_thread_pool.h</a> <a href="dynamic__thread__pool_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:fixed__size__thread__pool_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="fixed__size__thread__pool_8h.html">fixed_size_thread_pool.h</a> <a href="fixed__size__thread__pool_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:generic__stub_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="generic__stub_8h.html">generic_stub.h</a> <a href="generic__stub_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server_8h.html">server.h</a> <a href="server_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server__builder_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__builder_8h.html">server_builder.h</a> <a href="server__builder_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server__context_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__context_8h.html">server_context.h</a> <a href="server__context_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:server__credentials_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="server__credentials_8h.html">server_credentials.h</a> <a href="server__credentials_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:slice_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="slice_8h.html">slice.h</a> <a href="slice_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:status_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status_8h.html">status.h</a> <a href="status_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:status__code__enum_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="status__code__enum_8h.html">status_code_enum.h</a> <a href="status__code__enum_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:stream_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="stream_8h.html">stream.h</a> <a href="stream_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:thread__pool__interface_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="thread__pool__interface_8h.html">thread_pool_interface.h</a> <a href="thread__pool__interface_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:time_8h"><td class="memItemLeft" align="right" valign="top">file &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="time_8h.html">time.h</a> <a href="time_8h_source.html">[code]</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/doxygen.css b/doc/ref/c++/html/doxygen.css
new file mode 100644
index 0000000000..f0f36f89f5
--- /dev/null
+++ b/doc/ref/c++/html/doxygen.css
@@ -0,0 +1,1366 @@
+/* The standard CSS for doxygen 1.8.6 */
+
+body, table, div, p, dl {
+ font: 400 14px/22px Roboto,sans-serif;
+}
+
+/* @group Heading Levels */
+
+h1.groupheader {
+ font-size: 150%;
+}
+
+.title {
+ font: 400 14px/28px Roboto,sans-serif;
+ font-size: 150%;
+ font-weight: bold;
+ margin: 10px 2px;
+}
+
+h2.groupheader {
+ border-bottom: 1px solid #879ECB;
+ color: #354C7B;
+ font-size: 150%;
+ font-weight: normal;
+ margin-top: 1.75em;
+ padding-top: 8px;
+ padding-bottom: 4px;
+ width: 100%;
+}
+
+h3.groupheader {
+ font-size: 100%;
+}
+
+h1, h2, h3, h4, h5, h6 {
+ -webkit-transition: text-shadow 0.5s linear;
+ -moz-transition: text-shadow 0.5s linear;
+ -ms-transition: text-shadow 0.5s linear;
+ -o-transition: text-shadow 0.5s linear;
+ transition: text-shadow 0.5s linear;
+ margin-right: 15px;
+}
+
+h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow {
+ text-shadow: 0 0 15px cyan;
+}
+
+dt {
+ font-weight: bold;
+}
+
+div.multicol {
+ -moz-column-gap: 1em;
+ -webkit-column-gap: 1em;
+ -moz-column-count: 3;
+ -webkit-column-count: 3;
+}
+
+p.startli, p.startdd {
+ margin-top: 2px;
+}
+
+p.starttd {
+ margin-top: 0px;
+}
+
+p.endli {
+ margin-bottom: 0px;
+}
+
+p.enddd {
+ margin-bottom: 4px;
+}
+
+p.endtd {
+ margin-bottom: 2px;
+}
+
+/* @end */
+
+caption {
+ font-weight: bold;
+}
+
+span.legend {
+ font-size: 70%;
+ text-align: center;
+}
+
+h3.version {
+ font-size: 90%;
+ text-align: center;
+}
+
+div.qindex, div.navtab{
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+}
+
+div.qindex, div.navpath {
+ width: 100%;
+ line-height: 140%;
+}
+
+div.navtab {
+ margin-right: 15px;
+}
+
+/* @group Link Styling */
+
+a {
+ color: #3D578C;
+ font-weight: normal;
+ text-decoration: none;
+}
+
+.contents a:visited {
+ color: #4665A2;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+a.qindex {
+ font-weight: bold;
+}
+
+a.qindexHL {
+ font-weight: bold;
+ background-color: #9CAFD4;
+ color: #ffffff;
+ border: 1px double #869DCA;
+}
+
+.contents a.qindexHL:visited {
+ color: #ffffff;
+}
+
+a.el {
+ font-weight: bold;
+}
+
+a.elRef {
+}
+
+a.code, a.code:visited, a.line, a.line:visited {
+ color: #4665A2;
+}
+
+a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited {
+ color: #4665A2;
+}
+
+/* @end */
+
+dl.el {
+ margin-left: -1cm;
+}
+
+pre.fragment {
+ border: 1px solid #C4CFE5;
+ background-color: #FBFCFD;
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ overflow: auto;
+ word-wrap: break-word;
+ font-size: 9pt;
+ line-height: 125%;
+ font-family: monospace, fixed;
+ font-size: 105%;
+}
+
+div.fragment {
+ padding: 4px 6px;
+ margin: 4px 8px 4px 2px;
+ background-color: #FBFCFD;
+ border: 1px solid #C4CFE5;
+}
+
+div.line {
+ font-family: monospace, fixed;
+ font-size: 13px;
+ min-height: 13px;
+ line-height: 1.0;
+ text-wrap: unrestricted;
+ white-space: -moz-pre-wrap; /* Moz */
+ white-space: -pre-wrap; /* Opera 4-6 */
+ white-space: -o-pre-wrap; /* Opera 7 */
+ white-space: pre-wrap; /* CSS3 */
+ word-wrap: break-word; /* IE 5.5+ */
+ text-indent: -53px;
+ padding-left: 53px;
+ padding-bottom: 0px;
+ margin: 0px;
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+div.line.glow {
+ background-color: cyan;
+ box-shadow: 0 0 10px cyan;
+}
+
+
+span.lineno {
+ padding-right: 4px;
+ text-align: right;
+ border-right: 2px solid #0F0;
+ background-color: #E8E8E8;
+ white-space: pre;
+}
+span.lineno a {
+ background-color: #D8D8D8;
+}
+
+span.lineno a:hover {
+ background-color: #C8C8C8;
+}
+
+div.ah {
+ background-color: black;
+ font-weight: bold;
+ color: #ffffff;
+ margin-bottom: 3px;
+ margin-top: 3px;
+ padding: 0.2em;
+ border: solid thin #333;
+ border-radius: 0.5em;
+ -webkit-border-radius: .5em;
+ -moz-border-radius: .5em;
+ box-shadow: 2px 2px 3px #999;
+ -webkit-box-shadow: 2px 2px 3px #999;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444));
+ background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000);
+}
+
+div.groupHeader {
+ margin-left: 16px;
+ margin-top: 12px;
+ font-weight: bold;
+}
+
+div.groupText {
+ margin-left: 16px;
+ font-style: italic;
+}
+
+body {
+ background-color: white;
+ color: black;
+ margin: 0;
+}
+
+div.contents {
+ margin-top: 10px;
+ margin-left: 12px;
+ margin-right: 8px;
+}
+
+td.indexkey {
+ background-color: #EBEFF6;
+ font-weight: bold;
+ border: 1px solid #C4CFE5;
+ margin: 2px 0px 2px 0;
+ padding: 2px 10px;
+ white-space: nowrap;
+ vertical-align: top;
+}
+
+td.indexvalue {
+ background-color: #EBEFF6;
+ border: 1px solid #C4CFE5;
+ padding: 2px 10px;
+ margin: 2px 0px;
+}
+
+tr.memlist {
+ background-color: #EEF1F7;
+}
+
+p.formulaDsp {
+ text-align: center;
+}
+
+img.formulaDsp {
+
+}
+
+img.formulaInl {
+ vertical-align: middle;
+}
+
+div.center {
+ text-align: center;
+ margin-top: 0px;
+ margin-bottom: 0px;
+ padding: 0px;
+}
+
+div.center img {
+ border: 0px;
+}
+
+address.footer {
+ text-align: right;
+ padding-right: 12px;
+}
+
+img.footer {
+ border: 0px;
+ vertical-align: middle;
+}
+
+/* @group Code Colorization */
+
+span.keyword {
+ color: #008000
+}
+
+span.keywordtype {
+ color: #604020
+}
+
+span.keywordflow {
+ color: #e08000
+}
+
+span.comment {
+ color: #800000
+}
+
+span.preprocessor {
+ color: #806020
+}
+
+span.stringliteral {
+ color: #002080
+}
+
+span.charliteral {
+ color: #008080
+}
+
+span.vhdldigit {
+ color: #ff00ff
+}
+
+span.vhdlchar {
+ color: #000000
+}
+
+span.vhdlkeyword {
+ color: #700070
+}
+
+span.vhdllogic {
+ color: #ff0000
+}
+
+blockquote {
+ background-color: #F7F8FB;
+ border-left: 2px solid #9CAFD4;
+ margin: 0 24px 0 4px;
+ padding: 0 12px 0 16px;
+}
+
+/* @end */
+
+/*
+.search {
+ color: #003399;
+ font-weight: bold;
+}
+
+form.search {
+ margin-bottom: 0px;
+ margin-top: 0px;
+}
+
+input.search {
+ font-size: 75%;
+ color: #000080;
+ font-weight: normal;
+ background-color: #e8eef2;
+}
+*/
+
+td.tiny {
+ font-size: 75%;
+}
+
+.dirtab {
+ padding: 4px;
+ border-collapse: collapse;
+ border: 1px solid #A3B4D7;
+}
+
+th.dirtab {
+ background: #EBEFF6;
+ font-weight: bold;
+}
+
+hr {
+ height: 0px;
+ border: none;
+ border-top: 1px solid #4A6AAA;
+}
+
+hr.footer {
+ height: 1px;
+}
+
+/* @group Member Descriptions */
+
+table.memberdecls {
+ border-spacing: 0px;
+ padding: 0px;
+}
+
+.memberdecls td, .fieldtable tr {
+ -webkit-transition-property: background-color, box-shadow;
+ -webkit-transition-duration: 0.5s;
+ -moz-transition-property: background-color, box-shadow;
+ -moz-transition-duration: 0.5s;
+ -ms-transition-property: background-color, box-shadow;
+ -ms-transition-duration: 0.5s;
+ -o-transition-property: background-color, box-shadow;
+ -o-transition-duration: 0.5s;
+ transition-property: background-color, box-shadow;
+ transition-duration: 0.5s;
+}
+
+.memberdecls td.glow, .fieldtable tr.glow {
+ background-color: cyan;
+ box-shadow: 0 0 15px cyan;
+}
+
+.mdescLeft, .mdescRight,
+.memItemLeft, .memItemRight,
+.memTemplItemLeft, .memTemplItemRight, .memTemplParams {
+ background-color: #F9FAFC;
+ border: none;
+ margin: 4px;
+ padding: 1px 0 0 8px;
+}
+
+.mdescLeft, .mdescRight {
+ padding: 0px 8px 4px 8px;
+ color: #555;
+}
+
+.memSeparator {
+ border-bottom: 1px solid #DEE4F0;
+ line-height: 1px;
+ margin: 0px;
+ padding: 0px;
+}
+
+.memItemLeft, .memTemplItemLeft {
+ white-space: nowrap;
+}
+
+.memItemRight {
+ width: 100%;
+}
+
+.memTemplParams {
+ color: #4665A2;
+ white-space: nowrap;
+ font-size: 80%;
+}
+
+/* @end */
+
+/* @group Member Details */
+
+/* Styles for detailed member documentation */
+
+.memtemplate {
+ font-size: 80%;
+ color: #4665A2;
+ font-weight: normal;
+ margin-left: 9px;
+}
+
+.memnav {
+ background-color: #EBEFF6;
+ border: 1px solid #A3B4D7;
+ text-align: center;
+ margin: 2px;
+ margin-right: 15px;
+ padding: 2px;
+}
+
+.mempage {
+ width: 100%;
+}
+
+.memitem {
+ padding: 0;
+ margin-bottom: 10px;
+ margin-right: 5px;
+ -webkit-transition: box-shadow 0.5s linear;
+ -moz-transition: box-shadow 0.5s linear;
+ -ms-transition: box-shadow 0.5s linear;
+ -o-transition: box-shadow 0.5s linear;
+ transition: box-shadow 0.5s linear;
+ display: table !important;
+ width: 100%;
+}
+
+.memitem.glow {
+ box-shadow: 0 0 15px cyan;
+}
+
+.memname {
+ font-weight: bold;
+ margin-left: 6px;
+}
+
+.memname td {
+ vertical-align: bottom;
+}
+
+.memproto, dl.reflist dt {
+ border-top: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 0px 6px 0px;
+ color: #253555;
+ font-weight: bold;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ /* opera specific markup */
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ /* firefox specific markup */
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ -moz-border-radius-topright: 4px;
+ -moz-border-radius-topleft: 4px;
+ /* webkit specific markup */
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+
+}
+
+.memdoc, dl.reflist dd {
+ border-bottom: 1px solid #A8B8D9;
+ border-left: 1px solid #A8B8D9;
+ border-right: 1px solid #A8B8D9;
+ padding: 6px 10px 2px 10px;
+ background-color: #FBFCFD;
+ border-top-width: 0;
+ background-image:url('nav_g.png');
+ background-repeat:repeat-x;
+ background-color: #FFFFFF;
+ /* opera specific markup */
+ border-bottom-left-radius: 4px;
+ border-bottom-right-radius: 4px;
+ box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+ /* firefox specific markup */
+ -moz-border-radius-bottomleft: 4px;
+ -moz-border-radius-bottomright: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px;
+ /* webkit specific markup */
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+dl.reflist dt {
+ padding: 5px;
+}
+
+dl.reflist dd {
+ margin: 0px 0px 10px 0px;
+ padding: 5px;
+}
+
+.paramkey {
+ text-align: right;
+}
+
+.paramtype {
+ white-space: nowrap;
+}
+
+.paramname {
+ color: #602020;
+ white-space: nowrap;
+}
+.paramname em {
+ font-style: normal;
+}
+.paramname code {
+ line-height: 14px;
+}
+
+.params, .retval, .exception, .tparams {
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+.params .paramname, .retval .paramname {
+ font-weight: bold;
+ vertical-align: top;
+}
+
+.params .paramtype {
+ font-style: italic;
+ vertical-align: top;
+}
+
+.params .paramdir {
+ font-family: "courier new",courier,monospace;
+ vertical-align: top;
+}
+
+table.mlabels {
+ border-spacing: 0px;
+}
+
+td.mlabels-left {
+ width: 100%;
+ padding: 0px;
+}
+
+td.mlabels-right {
+ vertical-align: bottom;
+ padding: 0px;
+ white-space: nowrap;
+}
+
+span.mlabels {
+ margin-left: 8px;
+}
+
+span.mlabel {
+ background-color: #728DC1;
+ border-top:1px solid #5373B4;
+ border-left:1px solid #5373B4;
+ border-right:1px solid #C4CFE5;
+ border-bottom:1px solid #C4CFE5;
+ text-shadow: none;
+ color: white;
+ margin-right: 4px;
+ padding: 2px 3px;
+ border-radius: 3px;
+ font-size: 7pt;
+ white-space: nowrap;
+ vertical-align: middle;
+}
+
+
+
+/* @end */
+
+/* these are for tree view when not used as main index */
+
+div.directory {
+ margin: 10px 0px;
+ border-top: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ width: 100%;
+}
+
+.directory table {
+ border-collapse:collapse;
+}
+
+.directory td {
+ margin: 0px;
+ padding: 0px;
+ vertical-align: top;
+}
+
+.directory td.entry {
+ white-space: nowrap;
+ padding-right: 6px;
+ padding-top: 3px;
+}
+
+.directory td.entry a {
+ outline:none;
+}
+
+.directory td.entry a img {
+ border: none;
+}
+
+.directory td.desc {
+ width: 100%;
+ padding-left: 6px;
+ padding-right: 6px;
+ padding-top: 3px;
+ border-left: 1px solid rgba(0,0,0,0.05);
+}
+
+.directory tr.even {
+ padding-left: 6px;
+ background-color: #F7F8FB;
+}
+
+.directory img {
+ vertical-align: -30%;
+}
+
+.directory .levels {
+ white-space: nowrap;
+ width: 100%;
+ text-align: right;
+ font-size: 9pt;
+}
+
+.directory .levels span {
+ cursor: pointer;
+ padding-left: 2px;
+ padding-right: 2px;
+ color: #3D578C;
+}
+
+div.dynheader {
+ margin-top: 8px;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+address {
+ font-style: normal;
+ color: #2A3D61;
+}
+
+table.doxtable {
+ border-collapse:collapse;
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+
+table.doxtable td, table.doxtable th {
+ border: 1px solid #2D4068;
+ padding: 3px 7px 2px;
+}
+
+table.doxtable th {
+ background-color: #374F7F;
+ color: #FFFFFF;
+ font-size: 110%;
+ padding-bottom: 4px;
+ padding-top: 5px;
+}
+
+table.fieldtable {
+ /*width: 100%;*/
+ margin-bottom: 10px;
+ border: 1px solid #A8B8D9;
+ border-spacing: 0px;
+ -moz-border-radius: 4px;
+ -webkit-border-radius: 4px;
+ border-radius: 4px;
+ -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px;
+ -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+ box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15);
+}
+
+.fieldtable td, .fieldtable th {
+ padding: 3px 7px 2px;
+}
+
+.fieldtable td.fieldtype, .fieldtable td.fieldname {
+ white-space: nowrap;
+ border-right: 1px solid #A8B8D9;
+ border-bottom: 1px solid #A8B8D9;
+ vertical-align: top;
+}
+
+.fieldtable td.fieldname {
+ padding-top: 3px;
+}
+
+.fieldtable td.fielddoc {
+ border-bottom: 1px solid #A8B8D9;
+ /*width: 100%;*/
+}
+
+.fieldtable td.fielddoc p:first-child {
+ margin-top: 0px;
+}
+
+.fieldtable td.fielddoc p:last-child {
+ margin-bottom: 2px;
+}
+
+.fieldtable tr:last-child td {
+ border-bottom: none;
+}
+
+.fieldtable th {
+ background-image:url('nav_f.png');
+ background-repeat:repeat-x;
+ background-color: #E2E8F2;
+ font-size: 90%;
+ color: #253555;
+ padding-bottom: 4px;
+ padding-top: 5px;
+ text-align:left;
+ -moz-border-radius-topleft: 4px;
+ -moz-border-radius-topright: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ border-top-left-radius: 4px;
+ border-top-right-radius: 4px;
+ border-bottom: 1px solid #A8B8D9;
+}
+
+
+.tabsearch {
+ top: 0px;
+ left: 10px;
+ height: 36px;
+ background-image: url('tab_b.png');
+ z-index: 101;
+ overflow: hidden;
+ font-size: 13px;
+}
+
+.navpath ul
+{
+ font-size: 11px;
+ background-image:url('tab_b.png');
+ background-repeat:repeat-x;
+ background-position: 0 -5px;
+ height:30px;
+ line-height:30px;
+ color:#8AA0CC;
+ border:solid 1px #C2CDE4;
+ overflow:hidden;
+ margin:0px;
+ padding:0px;
+}
+
+.navpath li
+{
+ list-style-type:none;
+ float:left;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:url('bc_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+}
+
+.navpath li.navelem a
+{
+ height:32px;
+ display:block;
+ text-decoration: none;
+ outline: none;
+ color: #283A5D;
+ font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+}
+
+.navpath li.navelem a:hover
+{
+ color:#6884BD;
+}
+
+.navpath li.footer
+{
+ list-style-type:none;
+ float:right;
+ padding-left:10px;
+ padding-right:15px;
+ background-image:none;
+ background-repeat:no-repeat;
+ background-position:right;
+ color:#364D7C;
+ font-size: 8pt;
+}
+
+
+div.summary
+{
+ float: right;
+ font-size: 8pt;
+ padding-right: 5px;
+ width: 50%;
+ text-align: right;
+}
+
+div.summary a
+{
+ white-space: nowrap;
+}
+
+div.ingroups
+{
+ font-size: 8pt;
+ width: 50%;
+ text-align: left;
+}
+
+div.ingroups a
+{
+ white-space: nowrap;
+}
+
+div.header
+{
+ background-image:url('nav_h.png');
+ background-repeat:repeat-x;
+ background-color: #F9FAFC;
+ margin: 0px;
+ border-bottom: 1px solid #C4CFE5;
+}
+
+div.headertitle
+{
+ padding: 5px 5px 5px 10px;
+}
+
+dl
+{
+ padding: 0 0 0 10px;
+}
+
+/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */
+dl.section
+{
+ margin-left: 0px;
+ padding-left: 0px;
+}
+
+dl.note
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #D0C000;
+}
+
+dl.warning, dl.attention
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #FF0000;
+}
+
+dl.pre, dl.post, dl.invariant
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00D000;
+}
+
+dl.deprecated
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #505050;
+}
+
+dl.todo
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #00C0E0;
+}
+
+dl.test
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #3030E0;
+}
+
+dl.bug
+{
+ margin-left:-7px;
+ padding-left: 3px;
+ border-left:4px solid;
+ border-color: #C08050;
+}
+
+dl.section dd {
+ margin-bottom: 6px;
+}
+
+
+#projectlogo
+{
+ text-align: center;
+ vertical-align: bottom;
+ border-collapse: separate;
+}
+
+#projectlogo img
+{
+ border: 0px none;
+}
+
+#projectname
+{
+ font: 300% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 2px 0px;
+}
+
+#projectbrief
+{
+ font: 120% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#projectnumber
+{
+ font: 50% Tahoma, Arial,sans-serif;
+ margin: 0px;
+ padding: 0px;
+}
+
+#titlearea
+{
+ padding: 0px;
+ margin: 0px;
+ width: 100%;
+ border-bottom: 1px solid #5373B4;
+}
+
+.image
+{
+ text-align: center;
+}
+
+.dotgraph
+{
+ text-align: center;
+}
+
+.mscgraph
+{
+ text-align: center;
+}
+
+.diagraph
+{
+ text-align: center;
+}
+
+.caption
+{
+ font-weight: bold;
+}
+
+div.zoom
+{
+ border: 1px solid #90A5CE;
+}
+
+dl.citelist {
+ margin-bottom:50px;
+}
+
+dl.citelist dt {
+ color:#334975;
+ float:left;
+ font-weight:bold;
+ margin-right:10px;
+ padding:5px;
+}
+
+dl.citelist dd {
+ margin:2px 0;
+ padding:5px 0;
+}
+
+div.toc {
+ padding: 14px 25px;
+ background-color: #F4F6FA;
+ border: 1px solid #D8DFEE;
+ border-radius: 7px 7px 7px 7px;
+ float: right;
+ height: auto;
+ margin: 0 20px 10px 10px;
+ width: 200px;
+}
+
+div.toc li {
+ background: url("bdwn.png") no-repeat scroll 0 5px transparent;
+ font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif;
+ margin-top: 5px;
+ padding-left: 10px;
+ padding-top: 2px;
+}
+
+div.toc h3 {
+ font: bold 12px/1.2 Arial,FreeSans,sans-serif;
+ color: #4665A2;
+ border-bottom: 0 none;
+ margin: 0;
+}
+
+div.toc ul {
+ list-style: none outside none;
+ border: medium none;
+ padding: 0px;
+}
+
+div.toc li.level1 {
+ margin-left: 0px;
+}
+
+div.toc li.level2 {
+ margin-left: 15px;
+}
+
+div.toc li.level3 {
+ margin-left: 30px;
+}
+
+div.toc li.level4 {
+ margin-left: 45px;
+}
+
+.inherit_header {
+ font-weight: bold;
+ color: gray;
+ cursor: pointer;
+ -webkit-touch-callout: none;
+ -webkit-user-select: none;
+ -khtml-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ user-select: none;
+}
+
+.inherit_header td {
+ padding: 6px 0px 2px 5px;
+}
+
+.inherit {
+ display: none;
+}
+
+tr.heading h2 {
+ margin-top: 12px;
+ margin-bottom: 4px;
+}
+
+/* tooltip related style info */
+
+.ttc {
+ position: absolute;
+ display: none;
+}
+
+#powerTip {
+ cursor: default;
+ white-space: nowrap;
+ background-color: white;
+ border: 1px solid gray;
+ border-radius: 4px 4px 4px 4px;
+ box-shadow: 1px 1px 7px gray;
+ display: none;
+ font-size: smaller;
+ max-width: 80%;
+ opacity: 0.9;
+ padding: 1ex 1em 1em;
+ position: absolute;
+ z-index: 2147483647;
+}
+
+#powerTip div.ttdoc {
+ color: grey;
+ font-style: italic;
+}
+
+#powerTip div.ttname a {
+ font-weight: bold;
+}
+
+#powerTip div.ttname {
+ font-weight: bold;
+}
+
+#powerTip div.ttdeci {
+ color: #006318;
+}
+
+#powerTip div {
+ margin: 0px;
+ padding: 0px;
+ font: 12px/16px Roboto,sans-serif;
+}
+
+#powerTip:before, #powerTip:after {
+ content: "";
+ position: absolute;
+ margin: 0px;
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.w:after, #powerTip.w:before,
+#powerTip.e:after, #powerTip.e:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.nw:after, #powerTip.nw:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ border: solid transparent;
+ content: " ";
+ height: 0;
+ width: 0;
+ position: absolute;
+}
+
+#powerTip.n:after, #powerTip.s:after,
+#powerTip.w:after, #powerTip.e:after,
+#powerTip.nw:after, #powerTip.ne:after,
+#powerTip.sw:after, #powerTip.se:after {
+ border-color: rgba(255, 255, 255, 0);
+}
+
+#powerTip.n:before, #powerTip.s:before,
+#powerTip.w:before, #powerTip.e:before,
+#powerTip.nw:before, #powerTip.ne:before,
+#powerTip.sw:before, #powerTip.se:before {
+ border-color: rgba(128, 128, 128, 0);
+}
+
+#powerTip.n:after, #powerTip.n:before,
+#powerTip.ne:after, #powerTip.ne:before,
+#powerTip.nw:after, #powerTip.nw:before {
+ top: 100%;
+}
+
+#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after {
+ border-top-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+#powerTip.n:before {
+ border-top-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+#powerTip.n:after, #powerTip.n:before {
+ left: 50%;
+}
+
+#powerTip.nw:after, #powerTip.nw:before {
+ right: 14px;
+}
+
+#powerTip.ne:after, #powerTip.ne:before {
+ left: 14px;
+}
+
+#powerTip.s:after, #powerTip.s:before,
+#powerTip.se:after, #powerTip.se:before,
+#powerTip.sw:after, #powerTip.sw:before {
+ bottom: 100%;
+}
+
+#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after {
+ border-bottom-color: #ffffff;
+ border-width: 10px;
+ margin: 0px -10px;
+}
+
+#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before {
+ border-bottom-color: #808080;
+ border-width: 11px;
+ margin: 0px -11px;
+}
+
+#powerTip.s:after, #powerTip.s:before {
+ left: 50%;
+}
+
+#powerTip.sw:after, #powerTip.sw:before {
+ right: 14px;
+}
+
+#powerTip.se:after, #powerTip.se:before {
+ left: 14px;
+}
+
+#powerTip.e:after, #powerTip.e:before {
+ left: 100%;
+}
+#powerTip.e:after {
+ border-left-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.e:before {
+ border-left-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+#powerTip.w:after, #powerTip.w:before {
+ right: 100%;
+}
+#powerTip.w:after {
+ border-right-color: #ffffff;
+ border-width: 10px;
+ top: 50%;
+ margin-top: -10px;
+}
+#powerTip.w:before {
+ border-right-color: #808080;
+ border-width: 11px;
+ top: 50%;
+ margin-top: -11px;
+}
+
+@media print
+{
+ #top { display: none; }
+ #side-nav { display: none; }
+ #nav-path { display: none; }
+ body { overflow:visible; }
+ h1, h2, h3, h4, h5, h6 { page-break-after: avoid; }
+ .summary { display: none; }
+ .memitem { page-break-inside: avoid; }
+ #doc-content
+ {
+ margin-left:0 !important;
+ height:auto !important;
+ width:auto !important;
+ overflow:inherit;
+ display:inline;
+ }
+}
+
diff --git a/doc/ref/c++/html/doxygen.png b/doc/ref/c++/html/doxygen.png
new file mode 100644
index 0000000000..3ff17d807f
--- /dev/null
+++ b/doc/ref/c++/html/doxygen.png
Binary files differ
diff --git a/doc/ref/c++/html/dynamic__thread__pool_8h.html b/doc/ref/c++/html/dynamic__thread__pool_8h.html
new file mode 100644
index 0000000000..e5a5d79526
--- /dev/null
+++ b/doc/ref/c++/html/dynamic__thread__pool_8h.html
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/dynamic_thread_pool.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">dynamic_thread_pool.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc++/impl/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thd_8h_source.html">grpc++/impl/thd.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thread__pool__interface_8h_source.html">grpc++/thread_pool_interface.h</a>&gt;</code><br/>
+<code>#include &lt;list&gt;</code><br/>
+<code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;queue&gt;</code><br/>
+</div>
+<p><a href="dynamic__thread__pool_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html">grpc::DynamicThreadPool</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/dynamic__thread__pool_8h_source.html b/doc/ref/c++/html/dynamic__thread__pool_8h_source.html
new file mode 100644
index 0000000000..6b6a551c2d
--- /dev/null
+++ b/doc/ref/c++/html/dynamic__thread__pool_8h_source.html
@@ -0,0 +1,195 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/dynamic_thread_pool.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">dynamic_thread_pool.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="dynamic__thread__pool_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_DYNAMIC_THREAD_POOL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_DYNAMIC_THREAD_POOL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc++/impl/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="thd_8h.html">grpc++/impl/thd.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="thread__pool__interface_8h.html">grpc++/thread_pool_interface.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;queue&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_dynamic_thread_pool.html"> 49</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_dynamic_thread_pool.html">DynamicThreadPool</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_dynamic_thread_pool.html#af4b6567a60ddfa8551dfbddab4cb7209">DynamicThreadPool</a>(<span class="keywordtype">int</span> reserve_threads);</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <a class="code" href="classgrpc_1_1_dynamic_thread_pool.html#a9a81f1b15a357a8ca6cb3d7fef7a5456">~DynamicThreadPool</a>();</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30">Add</a>(<span class="keyword">const</span> std::function&lt;<span class="keywordtype">void</span>()&gt;&amp; callback) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">class </span>DynamicThread {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; DynamicThread(<a class="code" href="classgrpc_1_1_dynamic_thread_pool.html">DynamicThreadPool</a> *pool);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; ~DynamicThread();</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classgrpc_1_1_dynamic_thread_pool.html">DynamicThreadPool</a> *pool_;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; std::unique_ptr&lt;grpc::thread&gt; thd_;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keywordtype">void</span> ThreadFunc();</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; };</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="classgrpc_1_1mutex.html">grpc::mutex</a> mu_;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <a class="code" href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a> cv_;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <a class="code" href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a> shutdown_cv_;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">bool</span> shutdown_;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; std::queue&lt;std::function&lt;void()&gt;&gt; callbacks_;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">int</span> reserve_threads_;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">int</span> nthreads_;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">int</span> threads_waiting_;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; std::list&lt;DynamicThread*&gt; dead_threads_;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordtype">void</span> ThreadFunc();</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> ReapThreads(std::list&lt;DynamicThread*&gt;* tlist);</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;};</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#endif // GRPCXX_DYNAMIC_THREAD_POOL_H</span></div>
+<div class="ttc" id="classgrpc_1_1mutex_html"><div class="ttname"><a href="classgrpc_1_1mutex.html">grpc::mutex</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:45</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_thread_pool_interface_html"><div class="ttname"><a href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></div><div class="ttdef"><b>Definition:</b> thread_pool_interface.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_dynamic_thread_pool_html_af4b6567a60ddfa8551dfbddab4cb7209"><div class="ttname"><a href="classgrpc_1_1_dynamic_thread_pool.html#af4b6567a60ddfa8551dfbddab4cb7209">grpc::DynamicThreadPool::DynamicThreadPool</a></div><div class="ttdeci">DynamicThreadPool(int reserve_threads)</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html"><div class="ttname"><a href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:84</div></div>
+<div class="ttc" id="thread__pool__interface_8h_html"><div class="ttname"><a href="thread__pool__interface_8h.html">thread_pool_interface.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_dynamic_thread_pool_html_aea1cdc7989a2d6ab8fb1906428dbea30"><div class="ttname"><a href="classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30">grpc::DynamicThreadPool::Add</a></div><div class="ttdeci">void Add(const std::function&lt; void()&gt; &amp;callback) GRPC_OVERRIDE</div></div>
+<div class="ttc" id="classgrpc_1_1_dynamic_thread_pool_html_a9a81f1b15a357a8ca6cb3d7fef7a5456"><div class="ttname"><a href="classgrpc_1_1_dynamic_thread_pool.html#a9a81f1b15a357a8ca6cb3d7fef7a5456">grpc::DynamicThreadPool::~DynamicThreadPool</a></div><div class="ttdeci">~DynamicThreadPool()</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_dynamic_thread_pool_html"><div class="ttname"><a href="classgrpc_1_1_dynamic_thread_pool.html">grpc::DynamicThreadPool</a></div><div class="ttdef"><b>Definition:</b> dynamic_thread_pool.h:49</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="thd_8h_html"><div class="ttname"><a href="thd_8h.html">thd.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/dynsections.js b/doc/ref/c++/html/dynsections.js
new file mode 100644
index 0000000000..ed092c7f63
--- /dev/null
+++ b/doc/ref/c++/html/dynsections.js
@@ -0,0 +1,97 @@
+function toggleVisibility(linkObj)
+{
+ var base = $(linkObj).attr('id');
+ var summary = $('#'+base+'-summary');
+ var content = $('#'+base+'-content');
+ var trigger = $('#'+base+'-trigger');
+ var src=$(trigger).attr('src');
+ if (content.is(':visible')===true) {
+ content.hide();
+ summary.show();
+ $(linkObj).addClass('closed').removeClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ content.show();
+ summary.hide();
+ $(linkObj).removeClass('closed').addClass('opened');
+ $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+ return false;
+}
+
+function updateStripes()
+{
+ $('table.directory tr').
+ removeClass('even').filter(':visible:even').addClass('even');
+}
+function toggleLevel(level)
+{
+ $('table.directory tr').each(function(){
+ var l = this.id.split('_').length-1;
+ var i = $('#img'+this.id.substring(3));
+ var a = $('#arr'+this.id.substring(3));
+ if (l<level+1) {
+ i.attr('src','ftv2folderopen.png');
+ a.attr('src','ftv2mnode.png');
+ $(this).show();
+ } else if (l==level+1) {
+ i.attr('src','ftv2folderclosed.png');
+ a.attr('src','ftv2pnode.png');
+ $(this).show();
+ } else {
+ $(this).hide();
+ }
+ });
+ updateStripes();
+}
+
+function toggleFolder(id)
+{
+ //The clicked row
+ var currentRow = $('#row_'+id);
+ var currentRowImages = currentRow.find("img");
+
+ //All rows after the clicked row
+ var rows = currentRow.nextAll("tr");
+
+ //Only match elements AFTER this one (can't hide elements before)
+ var childRows = rows.filter(function() {
+ var re = new RegExp('^row_'+id+'\\d+_$', "i"); //only one sub
+ return this.id.match(re);
+ });
+
+ //First row is visible we are HIDING
+ if (childRows.filter(':first').is(':visible')===true) {
+ currentRowImages.filter("[id^=arr]").attr('src', 'ftv2pnode.png');
+ currentRowImages.filter("[id^=img]").attr('src', 'ftv2folderclosed.png');
+ rows.filter("[id^=row_"+id+"]").hide();
+ } else { //We are SHOWING
+ //All sub images
+ var childImages = childRows.find("img");
+ var childImg = childImages.filter("[id^=img]");
+ var childArr = childImages.filter("[id^=arr]");
+
+ currentRow.find("[id^=arr]").attr('src', 'ftv2mnode.png'); //open row
+ currentRow.find("[id^=img]").attr('src', 'ftv2folderopen.png'); //open row
+ childImg.attr('src','ftv2folderclosed.png'); //children closed
+ childArr.attr('src','ftv2pnode.png'); //children closed
+ childRows.show(); //show all children
+ }
+ updateStripes();
+}
+
+
+function toggleInherit(id)
+{
+ var rows = $('tr.inherit.'+id);
+ var img = $('tr.inherit_header.'+id+' img');
+ var src = $(img).attr('src');
+ if (rows.filter(':first').is(':visible')===true) {
+ rows.css('display','none');
+ $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
+ } else {
+ rows.css('display','table-row'); // using show() causes jump in firefox
+ $(img).attr('src',src.substring(0,src.length-10)+'open.png');
+ }
+}
+
diff --git a/doc/ref/c++/html/files.html b/doc/ref/c++/html/files.html
new file mode 100644
index 0000000000..9583ac7b1d
--- /dev/null
+++ b/doc/ref/c++/html/files.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: File List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">File List</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all files with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span><span onclick="javascript:toggleLevel(4);">4</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img id="arr_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('0_')"/><img id="img_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('0_')"/><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html" target="_self">include</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('0_0_')"/><img id="img_0_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('0_0_')"/><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html" target="_self">grpc++</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_0_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_0_0_')"/><img id="img_0_0_0_" src="ftv2folderopen.png" alt="-" width="24" height="22" onclick="toggleFolder('0_0_0_')"/><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html" target="_self">impl</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="call_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="call_8h.html" target="_self">call.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_1_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="client__unary__call_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="client__unary__call_8h.html" target="_self">client_unary_call.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_2_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="grpc__library_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="grpc__library_8h.html" target="_self">grpc_library.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_3_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="internal__stub_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="internal__stub_8h.html" target="_self">internal_stub.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_4_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="proto__utils_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="proto__utils_8h.html" target="_self">proto_utils.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_5_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="rpc__method_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="rpc__method_8h.html" target="_self">rpc_method.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_6_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="rpc__service__method_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="rpc__service__method_8h.html" target="_self">rpc_service_method.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_7_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="serialization__traits_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="serialization__traits_8h.html" target="_self">serialization_traits.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_8_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="service__type_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="service__type_8h.html" target="_self">service_type.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_9_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sync_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sync_8h.html" target="_self">sync.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_10_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sync__cxx11_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sync__cxx11_8h.html" target="_self">sync_cxx11.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_11_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sync__no__cxx11_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="sync__no__cxx11_8h.html" target="_self">sync_no_cxx11.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_12_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="thd_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="thd_8h.html" target="_self">thd.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_13_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="thd__cxx11_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="thd__cxx11_8h.html" target="_self">thd_cxx11.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_0_14_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="thd__no__cxx11_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="thd__no__cxx11_8h.html" target="_self">thd_no_cxx11.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_1_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="async__generic__service_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="async__generic__service_8h.html" target="_self">async_generic_service.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_2_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="async__unary__call_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="async__unary__call_8h.html" target="_self">async_unary_call.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_3_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="auth__context_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="auth__context_8h.html" target="_self">auth_context.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_4_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="auth__property__iterator_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="auth__property__iterator_8h.html" target="_self">auth_property_iterator.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_5_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="byte__buffer_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="byte__buffer_8h.html" target="_self">byte_buffer.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_6_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="channel__arguments_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="channel__arguments_8h.html" target="_self">channel_arguments.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_7_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="channel__interface_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="channel__interface_8h.html" target="_self">channel_interface.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_8_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="client__context_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="client__context_8h.html" target="_self">client_context.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_9_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="completion__queue_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="completion__queue_8h.html" target="_self">completion_queue.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_10_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="config_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="config_8h.html" target="_self">config.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_11_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="config__protobuf_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="config__protobuf_8h.html" target="_self">config_protobuf.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_12_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="create__channel_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="create__channel_8h.html" target="_self">create_channel.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_13_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="credentials_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="credentials_8h.html" target="_self">credentials.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_14_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="dynamic__thread__pool_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="dynamic__thread__pool_8h.html" target="_self">dynamic_thread_pool.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_15_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fixed__size__thread__pool_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fixed__size__thread__pool_8h.html" target="_self">fixed_size_thread_pool.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_16_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="generic__stub_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="generic__stub_8h.html" target="_self">generic_stub.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_17_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="server_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="server_8h.html" target="_self">server.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_18_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="server__builder_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="server__builder_8h.html" target="_self">server_builder.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_19_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="server__context_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="server__context_8h.html" target="_self">server_context.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_20_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="server__credentials_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="server__credentials_8h.html" target="_self">server_credentials.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_21_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="slice_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="slice_8h.html" target="_self">slice.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_22_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="status_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="status_8h.html" target="_self">status.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_23_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="status__code__enum_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="status__code__enum_8h.html" target="_self">status_code_enum.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_24_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="stream_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="stream_8h.html" target="_self">stream.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_25_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="thread__pool__interface_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="thread__pool__interface_8h.html" target="_self">thread_pool_interface.h</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_26_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="time_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="time_8h.html" target="_self">time.h</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/fixed__size__thread__pool_8h.html b/doc/ref/c++/html/fixed__size__thread__pool_8h.html
new file mode 100644
index 0000000000..77cc8d6da0
--- /dev/null
+++ b/doc/ref/c++/html/fixed__size__thread__pool_8h.html
@@ -0,0 +1,122 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/fixed_size_thread_pool.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">fixed_size_thread_pool.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc++/impl/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thd_8h_source.html">grpc++/impl/thd.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thread__pool__interface_8h_source.html">grpc++/thread_pool_interface.h</a>&gt;</code><br/>
+<code>#include &lt;queue&gt;</code><br/>
+<code>#include &lt;vector&gt;</code><br/>
+</div>
+<p><a href="fixed__size__thread__pool_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html">grpc::FixedSizeThreadPool</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/fixed__size__thread__pool_8h_source.html b/doc/ref/c++/html/fixed__size__thread__pool_8h_source.html
new file mode 100644
index 0000000000..a0f6f70d1a
--- /dev/null
+++ b/doc/ref/c++/html/fixed__size__thread__pool_8h_source.html
@@ -0,0 +1,180 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/fixed_size_thread_pool.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">fixed_size_thread_pool.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="fixed__size__thread__pool_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_FIXED_SIZE_THREAD_POOL_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_FIXED_SIZE_THREAD_POOL_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc++/impl/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="thd_8h.html">grpc++/impl/thd.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="thread__pool__interface_8h.html">grpc++/thread_pool_interface.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;queue&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classgrpc_1_1_fixed_size_thread_pool.html"> 48</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_fixed_size_thread_pool.html">FixedSizeThreadPool</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_fixed_size_thread_pool.html#a7b1d9cbdaedc89f5f4dd6e5782bfe5e0">FixedSizeThreadPool</a>(<span class="keywordtype">int</span> num_threads);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classgrpc_1_1_fixed_size_thread_pool.html#aa31a8326a490c77e0e04b6df7ac3d7f8">~FixedSizeThreadPool</a>();</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026">Add</a>(<span class="keyword">const</span> std::function&lt;<span class="keywordtype">void</span>()&gt;&amp; callback) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classgrpc_1_1mutex.html">grpc::mutex</a> mu_;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <a class="code" href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a> cv_;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">bool</span> shutdown_;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; std::queue&lt;std::function&lt;void()&gt;&gt; callbacks_;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; std::vector&lt;grpc::thread*&gt; threads_;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">void</span> ThreadFunc();</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;};</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="preprocessor">#endif // GRPCXX_FIXED_SIZE_THREAD_POOL_H</span></div>
+<div class="ttc" id="classgrpc_1_1_fixed_size_thread_pool_html_aa31a8326a490c77e0e04b6df7ac3d7f8"><div class="ttname"><a href="classgrpc_1_1_fixed_size_thread_pool.html#aa31a8326a490c77e0e04b6df7ac3d7f8">grpc::FixedSizeThreadPool::~FixedSizeThreadPool</a></div><div class="ttdeci">~FixedSizeThreadPool()</div></div>
+<div class="ttc" id="classgrpc_1_1mutex_html"><div class="ttname"><a href="classgrpc_1_1mutex.html">grpc::mutex</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:45</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_thread_pool_interface_html"><div class="ttname"><a href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></div><div class="ttdef"><b>Definition:</b> thread_pool_interface.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html"><div class="ttname"><a href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:84</div></div>
+<div class="ttc" id="thread__pool__interface_8h_html"><div class="ttname"><a href="thread__pool__interface_8h.html">thread_pool_interface.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_fixed_size_thread_pool_html_a7b1d9cbdaedc89f5f4dd6e5782bfe5e0"><div class="ttname"><a href="classgrpc_1_1_fixed_size_thread_pool.html#a7b1d9cbdaedc89f5f4dd6e5782bfe5e0">grpc::FixedSizeThreadPool::FixedSizeThreadPool</a></div><div class="ttdeci">FixedSizeThreadPool(int num_threads)</div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_fixed_size_thread_pool_html_ad7ee348722d8d120720032fae96d3026"><div class="ttname"><a href="classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026">grpc::FixedSizeThreadPool::Add</a></div><div class="ttdeci">void Add(const std::function&lt; void()&gt; &amp;callback) GRPC_OVERRIDE</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_fixed_size_thread_pool_html"><div class="ttname"><a href="classgrpc_1_1_fixed_size_thread_pool.html">grpc::FixedSizeThreadPool</a></div><div class="ttdef"><b>Definition:</b> fixed_size_thread_pool.h:48</div></div>
+<div class="ttc" id="thd_8h_html"><div class="ttname"><a href="thd_8h.html">thd.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/ftv2blank.png b/doc/ref/c++/html/ftv2blank.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/c++/html/ftv2blank.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2cl.png b/doc/ref/c++/html/ftv2cl.png
new file mode 100644
index 0000000000..132f6577bf
--- /dev/null
+++ b/doc/ref/c++/html/ftv2cl.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2doc.png b/doc/ref/c++/html/ftv2doc.png
new file mode 100644
index 0000000000..17edabff95
--- /dev/null
+++ b/doc/ref/c++/html/ftv2doc.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2folderclosed.png b/doc/ref/c++/html/ftv2folderclosed.png
new file mode 100644
index 0000000000..bb8ab35edc
--- /dev/null
+++ b/doc/ref/c++/html/ftv2folderclosed.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2folderopen.png b/doc/ref/c++/html/ftv2folderopen.png
new file mode 100644
index 0000000000..d6c7f676a3
--- /dev/null
+++ b/doc/ref/c++/html/ftv2folderopen.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2lastnode.png b/doc/ref/c++/html/ftv2lastnode.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/c++/html/ftv2lastnode.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2link.png b/doc/ref/c++/html/ftv2link.png
new file mode 100644
index 0000000000..17edabff95
--- /dev/null
+++ b/doc/ref/c++/html/ftv2link.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2mlastnode.png b/doc/ref/c++/html/ftv2mlastnode.png
new file mode 100644
index 0000000000..0b63f6d38c
--- /dev/null
+++ b/doc/ref/c++/html/ftv2mlastnode.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2mnode.png b/doc/ref/c++/html/ftv2mnode.png
new file mode 100644
index 0000000000..0b63f6d38c
--- /dev/null
+++ b/doc/ref/c++/html/ftv2mnode.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2mo.png b/doc/ref/c++/html/ftv2mo.png
new file mode 100644
index 0000000000..4bfb80f76e
--- /dev/null
+++ b/doc/ref/c++/html/ftv2mo.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2node.png b/doc/ref/c++/html/ftv2node.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/c++/html/ftv2node.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2ns.png b/doc/ref/c++/html/ftv2ns.png
new file mode 100644
index 0000000000..72e3d71c28
--- /dev/null
+++ b/doc/ref/c++/html/ftv2ns.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2plastnode.png b/doc/ref/c++/html/ftv2plastnode.png
new file mode 100644
index 0000000000..c6ee22f937
--- /dev/null
+++ b/doc/ref/c++/html/ftv2plastnode.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2pnode.png b/doc/ref/c++/html/ftv2pnode.png
new file mode 100644
index 0000000000..c6ee22f937
--- /dev/null
+++ b/doc/ref/c++/html/ftv2pnode.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2splitbar.png b/doc/ref/c++/html/ftv2splitbar.png
new file mode 100644
index 0000000000..fe895f2c58
--- /dev/null
+++ b/doc/ref/c++/html/ftv2splitbar.png
Binary files differ
diff --git a/doc/ref/c++/html/ftv2vertline.png b/doc/ref/c++/html/ftv2vertline.png
new file mode 100644
index 0000000000..63c605bb4c
--- /dev/null
+++ b/doc/ref/c++/html/ftv2vertline.png
Binary files differ
diff --git a/doc/ref/c++/html/functions.html b/doc/ref/c++/html/functions.html
new file mode 100644
index 0000000000..9a78b706e3
--- /dev/null
+++ b/doc/ref/c++/html/functions.html
@@ -0,0 +1,193 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_:"></a>- : -</h3><ul>
+<li>::grpc::ClientAsyncReader
+: <a class="el" href="classgrpc_1_1_client_context.html#af5343062a44a5633b144751e59969237">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientAsyncReaderWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#a5c0c96957129933bfe94a299c764eaa7">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientAsyncResponseReader
+: <a class="el" href="classgrpc_1_1_client_context.html#a4b00162a9bd86e07669f2af67f85c73a">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientAsyncWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#af3547958eadfaeb18692865bd73999ad">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientReader
+: <a class="el" href="classgrpc_1_1_client_context.html#ade499098cc91745c1c87147d7a7fb7bf">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#ade499098cc91745c1c87147d7a7fb7bf">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::ClientReaderWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#a6d5659aa24edba057895be774e2752ec">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a6d5659aa24edba057895be774e2752ec">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::ClientWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#a4498fada67d531d99a8642f47d746544">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a4498fada67d531d99a8642f47d746544">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::Server
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a8c3fa4c066981aae114e41c3f9340144">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a8c3fa4c066981aae114e41c3f9340144">grpc::ServerContext</a>
+, <a class="el" href="classgrpc_1_1_server_credentials.html#a8c3fa4c066981aae114e41c3f9340144">grpc::ServerCredentials</a>
+</li>
+<li>::grpc::ServerAsyncReader
+: <a class="el" href="classgrpc_1_1_server_context.html#a774bb57486686958c67f29072de768ed">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerAsyncReaderWriter
+: <a class="el" href="classgrpc_1_1_server_context.html#a85f3f3dc5b92690c676b86571be20684">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerAsyncResponseWriter
+: <a class="el" href="classgrpc_1_1_server_context.html#a2c679b602d120c70a6713fe742704b4e">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerAsyncWriter
+: <a class="el" href="classgrpc_1_1_server_context.html#a6068d9e3369a1016e7b75350b80f4f45">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerContext
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6c5b4f4c66d254f341915982a17aac95">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::ServerReader
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a4f20e2d049342ae00242bbc8021a44bd">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a4f20e2d049342ae00242bbc8021a44bd">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerReaderWriter
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a8c0a0d64c582a952c8f16d8eac71c677">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a8c0a0d64c582a952c8f16d8eac71c677">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerWriter
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a2f2dfa831a62c43ad5647a45080488e3">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a2f2dfa831a62c43ad5647a45080488e3">grpc::ServerContext</a>
+</li>
+<li>::grpc::testing::InteropContextInspector
+: <a class="el" href="classgrpc_1_1_server_context.html#a54fd90aaca3685b127354412368eb1c6">grpc::ServerContext</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_a.html b/doc/ref/c++/html/functions_a.html
new file mode 100644
index 0000000000..0268e9e949
--- /dev/null
+++ b/doc/ref/c++/html/functions_a.html
@@ -0,0 +1,198 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li class="current"><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>Add()
+: <a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30">grpc::DynamicThreadPool</a>
+, <a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026">grpc::FixedSizeThreadPool</a>
+, <a class="el" href="classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce">grpc::ThreadPoolInterface</a>
+</li>
+<li>ADD_REF
+: <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2">grpc::Slice</a>
+</li>
+<li>AddCompletionQueue()
+: <a class="el" href="classgrpc_1_1_server_builder.html#accbbd95080ca974e84fa1d4cb2ea9518">grpc::ServerBuilder</a>
+</li>
+<li>AddInitialMetadata()
+: <a class="el" href="classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f">grpc::ServerContext</a>
+</li>
+<li>AddListeningPort()
+: <a class="el" href="classgrpc_1_1_server_builder.html#a256e035e62b43cd79137abf7c066902a">grpc::ServerBuilder</a>
+</li>
+<li>AddMetadata()
+: <a class="el" href="classgrpc_1_1_client_context.html#a69a026f073ef5934697568d689440bd4">grpc::ClientContext</a>
+</li>
+<li>AddMethod()
+: <a class="el" href="classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578">grpc::RpcService</a>
+</li>
+<li>AddOp()
+: <a class="el" href="classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8">grpc::CallNoOp&lt; I &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62">grpc::CallOpClientRecvStatus</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a">grpc::CallOpClientSendClose</a>
+, <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74">grpc::CallOpRecvInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a">grpc::CallOpRecvMessage&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77">grpc::CallOpSendInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e">grpc::CallOpSendMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b">grpc::CallOpServerSendStatus</a>
+</li>
+<li>AddRef
+: <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">grpc::Slice</a>
+</li>
+<li>AddTrailingMetadata()
+: <a class="el" href="classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c">grpc::ServerContext</a>
+</li>
+<li>ApplyToCall()
+: <a class="el" href="classgrpc_1_1_credentials.html#a2b3162e0dbb4530ac1c4b81a0339b1e1">grpc::Credentials</a>
+</li>
+<li>AsSecureCredentials()
+: <a class="el" href="classgrpc_1_1_credentials.html#aefc960d2b52b15f2561946e0f840874f">grpc::Credentials</a>
+</li>
+<li>AsyncGenericService()
+: <a class="el" href="classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae">grpc::AsyncGenericService</a>
+, <a class="el" href="classgrpc_1_1_server.html#afa12bc5912105e1966887391881de595">grpc::Server</a>
+</li>
+<li>AsynchronousService()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b">grpc::AsynchronousService</a>
+, <a class="el" href="classgrpc_1_1_server.html#a9f65421947ee8cbae15ff96b44f6d532">grpc::Server</a>
+</li>
+<li>AsyncNext()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4">grpc::CompletionQueue</a>
+</li>
+<li>auth_context()
+: <a class="el" href="classgrpc_1_1_client_context.html#a02f279bf74e26d7c32d0b18dc73dccea">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e">grpc::ServerContext</a>
+</li>
+<li>AuthPropertyIterator()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949">grpc::AuthPropertyIterator</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_b.html b/doc/ref/c++/html/functions_b.html
new file mode 100644
index 0000000000..a1784d78a7
--- /dev/null
+++ b/doc/ref/c++/html/functions_b.html
@@ -0,0 +1,157 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li class="current"><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>begin()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a4a4a9e18e05e1a06cf25b8a77edd8c89">grpc::AuthContext</a>
+, <a class="el" href="classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8">grpc::Slice</a>
+</li>
+<li>BIDI_STREAMING
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894">grpc::RpcMethod</a>
+</li>
+<li>BidiStreamingHandler()
+: <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a9fcf1462b4ea3c6a37e54076aafb93e1">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a9fcf1462b4ea3c6a37e54076aafb93e1">grpc::ServerContext</a>
+</li>
+<li>BlockingUnaryCall
+: <a class="el" href="classgrpc_1_1_client_context.html#a4aac0a120f3498d1151460ef89ce8446">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a4aac0a120f3498d1151460ef89ce8446">grpc::CompletionQueue</a>
+</li>
+<li>BuildAndStart()
+: <a class="el" href="classgrpc_1_1_server_builder.html#af284cd39b185043e8e92405c1ae0f310">grpc::ServerBuilder</a>
+</li>
+<li>ByteBuffer()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#aa1f69f81c3cb03c61b544a0222e83004">grpc::ByteBuffer</a>
+, <a class="el" href="classgrpc_1_1_slice.html#ac6c83f28f4b17ae317094a794e92e99e">grpc::Slice</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_c.html b/doc/ref/c++/html/functions_c.html
new file mode 100644
index 0000000000..6b5d95bc88
--- /dev/null
+++ b/doc/ref/c++/html/functions_c.html
@@ -0,0 +1,280 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li class="current"><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>Call()
+: <a class="el" href="classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a">grpc::Call</a>
+</li>
+<li>call()
+: <a class="el" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">grpc::Call</a>
+</li>
+<li>Call()
+: <a class="el" href="classgrpc_1_1_call.html#a82dc146935bbbb535d6c4c9fb9887373">grpc::Call</a>
+, <a class="el" href="classgrpc_1_1_generic_stub.html#a29d999cf06468cfe12d3cdc912cb0afb">grpc::GenericStub</a>
+</li>
+<li>call
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>CallOpClientRecvStatus()
+: <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de">grpc::CallOpClientRecvStatus</a>
+, <a class="el" href="classgrpc_1_1_client_context.html#aa7c3f046b48d55b5a82cbee3fd84faa2">grpc::ClientContext</a>
+</li>
+<li>CallOpClientSendClose()
+: <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e">grpc::CallOpClientSendClose</a>
+</li>
+<li>CallOpGenericRecvMessage()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda">grpc::CallOpGenericRecvMessage</a>
+</li>
+<li>CallOpRecvInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8">grpc::CallOpRecvInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_client_context.html#a94ad025954d211da7d27efa58cb2ea91">grpc::ClientContext</a>
+</li>
+<li>CallOpRecvMessage()
+: <a class="el" href="classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253">grpc::CallOpRecvMessage&lt; R &gt;</a>
+</li>
+<li>CallOpSendInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>CallOpSendMessage()
+: <a class="el" href="classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291">grpc::CallOpSendMessage</a>
+</li>
+<li>CallOpServerSendStatus()
+: <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4">grpc::CallOpServerSendStatus</a>
+</li>
+<li>CallOpSet()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+</li>
+<li>CallOpSetInterface()
+: <a class="el" href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000">grpc::CallOpSetInterface</a>
+</li>
+<li>CANCELLED
+: <a class="el" href="classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab">grpc::Status</a>
+</li>
+<li>census_context()
+: <a class="el" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e">grpc::ServerContext</a>
+</li>
+<li>cert_chain
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e">grpc::SslServerCredentialsOptions::PemKeyCertPair</a>
+</li>
+<li>Channel
+: <a class="el" href="classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d">grpc::ClientContext</a>
+</li>
+<li>channel()
+: <a class="el" href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729">grpc::InternalStub</a>
+</li>
+<li>channel_tag()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">grpc::RpcMethod</a>
+</li>
+<li>ChannelArguments()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb">grpc::ChannelArguments</a>
+</li>
+<li>Clear()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80">grpc::ByteBuffer</a>
+, <a class="el" href="classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02">grpc::WriteOptions</a>
+</li>
+<li>clear_buffer_hint()
+: <a class="el" href="classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f">grpc::WriteOptions</a>
+</li>
+<li>clear_no_compression()
+: <a class="el" href="classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7">grpc::WriteOptions</a>
+</li>
+<li>client_metadata()
+: <a class="el" href="classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1">grpc::ServerContext</a>
+</li>
+<li>CLIENT_STREAMING
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a">grpc::RpcMethod</a>
+</li>
+<li>ClientAsyncReader()
+: <a class="el" href="classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4">grpc::ClientAsyncReader&lt; R &gt;</a>
+</li>
+<li>ClientAsyncReaderWriter()
+: <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ClientAsyncResponseReader()
+: <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf">grpc::ClientAsyncResponseReader&lt; R &gt;</a>
+</li>
+<li>ClientAsyncWriter()
+: <a class="el" href="classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6">grpc::ClientAsyncWriter&lt; W &gt;</a>
+</li>
+<li>ClientContext()
+: <a class="el" href="classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9">grpc::ClientContext</a>
+</li>
+<li>ClientReader()
+: <a class="el" href="classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56">grpc::ClientReader&lt; R &gt;</a>
+</li>
+<li>ClientReaderWriter()
+: <a class="el" href="classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ClientRecvStatus()
+: <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813">grpc::CallOpClientRecvStatus</a>
+</li>
+<li>ClientSendClose()
+: <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc">grpc::CallOpClientSendClose</a>
+</li>
+<li>ClientStreamingHandler()
+: <a class="el" href="classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#ae11583f8aab976055b1feae895d7e12a">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#ae11583f8aab976055b1feae895d7e12a">grpc::ServerContext</a>
+</li>
+<li>ClientWriter()
+: <a class="el" href="classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe">grpc::ClientWriter&lt; W &gt;</a>
+</li>
+<li>CompletionQueue()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566">grpc::CompletionQueue</a>
+</li>
+<li>CompositeCredentials
+: <a class="el" href="classgrpc_1_1_credentials.html#a319db47fafb1868e66fd34b8bc084f3f">grpc::Credentials</a>
+</li>
+<li>compression_algorithm()
+: <a class="el" href="classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171">grpc::ServerContext</a>
+</li>
+<li>compression_level()
+: <a class="el" href="classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8">grpc::ServerContext</a>
+</li>
+<li>condition_variable()
+: <a class="el" href="classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611">grpc::condition_variable</a>
+, <a class="el" href="classgrpc_1_1lock__guard.html#a89c9b6aa2256fa5efd92a333d96381d4">grpc::lock_guard&lt; mutex &gt;</a>
+, <a class="el" href="classgrpc_1_1mutex.html#a89c9b6aa2256fa5efd92a333d96381d4">grpc::mutex</a>
+</li>
+<li>cq()
+: <a class="el" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">grpc::Call</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b">grpc::CompletionQueue</a>
+</li>
+<li>CreateCall()
+: <a class="el" href="classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0">grpc::ChannelInterface</a>
+</li>
+<li>CreateChannel
+: <a class="el" href="classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69">grpc::Credentials</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_d.html b/doc/ref/c++/html/functions_d.html
new file mode 100644
index 0000000000..86ddbc40cb
--- /dev/null
+++ b/doc/ref/c++/html/functions_d.html
@@ -0,0 +1,153 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>deadline()
+: <a class="el" href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052">grpc::ServerContext</a>
+</li>
+<li>Deserialize()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc</a>
+, <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5">grpc::SerializationTraits&lt; ByteBuffer, void &gt;</a>
+, <a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a>
+</li>
+<li>DeserializeFuncType()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt;</a>
+</li>
+<li>Dump()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#a1b284d25c0c3c594c386800c548048f1">grpc::ByteBuffer</a>
+</li>
+<li>DynamicThreadPool()
+: <a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#af4b6567a60ddfa8551dfbddab4cb7209">grpc::DynamicThreadPool</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_e.html b/doc/ref/c++/html/functions_e.html
new file mode 100644
index 0000000000..998aa5f013
--- /dev/null
+++ b/doc/ref/c++/html/functions_e.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li class="current"><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>end()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a81d358b427e0f1096e148918cdeef991">grpc::AuthContext</a>
+, <a class="el" href="classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60">grpc::Slice</a>
+</li>
+<li>error_code()
+: <a class="el" href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181">grpc::Status</a>
+</li>
+<li>error_message()
+: <a class="el" href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16">grpc::Status</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_enum.html b/doc/ref/c++/html/functions_enum.html
new file mode 100644
index 0000000000..2335703d7f
--- /dev/null
+++ b/doc/ref/c++/html/functions_enum.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Enumerations</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li class="current"><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>AddRef
+: <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">grpc::Slice</a>
+</li>
+<li>NextStatus
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">grpc::CompletionQueue</a>
+</li>
+<li>RpcType
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">grpc::RpcMethod</a>
+</li>
+<li>StealRef
+: <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">grpc::Slice</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_eval.html b/doc/ref/c++/html/functions_eval.html
new file mode 100644
index 0000000000..f3620d94c6
--- /dev/null
+++ b/doc/ref/c++/html/functions_eval.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Enumerator</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>ADD_REF
+: <a class="el" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2">grpc::Slice</a>
+</li>
+<li>BIDI_STREAMING
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894">grpc::RpcMethod</a>
+</li>
+<li>CLIENT_STREAMING
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a">grpc::RpcMethod</a>
+</li>
+<li>GOT_EVENT
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08">grpc::CompletionQueue</a>
+</li>
+<li>NORMAL_RPC
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e">grpc::RpcMethod</a>
+</li>
+<li>SERVER_STREAMING
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775">grpc::RpcMethod</a>
+</li>
+<li>SHUTDOWN
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b">grpc::CompletionQueue</a>
+</li>
+<li>STEAL_REF
+: <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7">grpc::Slice</a>
+</li>
+<li>TIMEOUT
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04">grpc::CompletionQueue</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_f.html b/doc/ref/c++/html/functions_f.html
new file mode 100644
index 0000000000..75b88bc901
--- /dev/null
+++ b/doc/ref/c++/html/functions_f.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li class="current"><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>FillOps()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874">grpc::CallOpSetInterface</a>
+</li>
+<li>FinalizeResult()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+, <a class="el" href="classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d">grpc::CompletionQueueTag</a>
+, <a class="el" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+</li>
+<li>FindPropertyValues()
+: <a class="el" href="classgrpc_1_1_auth_context.html#ad34c79f4934c974aa9e77ca69eed82aa">grpc::AuthContext</a>
+</li>
+<li>Finish()
+: <a class="el" href="classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f">grpc::ClientAsyncReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830">grpc::ClientAsyncResponseReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">grpc::ClientAsyncStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b">grpc::ClientAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df">grpc::ClientReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">grpc::ClientStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658">grpc::ClientWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004">grpc::ServerAsyncWriter&lt; W &gt;</a>
+</li>
+<li>FinishOp()
+: <a class="el" href="classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae">grpc::CallNoOp&lt; I &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f">grpc::CallOpClientRecvStatus</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656">grpc::CallOpClientSendClose</a>
+, <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb">grpc::CallOpRecvInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6">grpc::CallOpRecvMessage&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13">grpc::CallOpSendInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b">grpc::CallOpSendMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978">grpc::CallOpServerSendStatus</a>
+</li>
+<li>FinishWithError()
+: <a class="el" href="classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+</li>
+<li>FixedSizeThreadPool()
+: <a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#a7b1d9cbdaedc89f5f4dd6e5782bfe5e0">grpc::FixedSizeThreadPool</a>
+</li>
+<li>flags()
+: <a class="el" href="classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153">grpc::WriteOptions</a>
+</li>
+<li>force_client_auth
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e">grpc::SslServerCredentialsOptions</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func.html b/doc/ref/c++/html/functions_func.html
new file mode 100644
index 0000000000..af38c7d6bf
--- /dev/null
+++ b/doc/ref/c++/html/functions_func.html
@@ -0,0 +1,189 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li class="current"><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>Add()
+: <a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30">grpc::DynamicThreadPool</a>
+, <a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026">grpc::FixedSizeThreadPool</a>
+, <a class="el" href="classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce">grpc::ThreadPoolInterface</a>
+</li>
+<li>AddCompletionQueue()
+: <a class="el" href="classgrpc_1_1_server_builder.html#accbbd95080ca974e84fa1d4cb2ea9518">grpc::ServerBuilder</a>
+</li>
+<li>AddInitialMetadata()
+: <a class="el" href="classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f">grpc::ServerContext</a>
+</li>
+<li>AddListeningPort()
+: <a class="el" href="classgrpc_1_1_server_builder.html#a256e035e62b43cd79137abf7c066902a">grpc::ServerBuilder</a>
+</li>
+<li>AddMetadata()
+: <a class="el" href="classgrpc_1_1_client_context.html#a69a026f073ef5934697568d689440bd4">grpc::ClientContext</a>
+</li>
+<li>AddMethod()
+: <a class="el" href="classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578">grpc::RpcService</a>
+</li>
+<li>AddOp()
+: <a class="el" href="classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8">grpc::CallNoOp&lt; I &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62">grpc::CallOpClientRecvStatus</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a">grpc::CallOpClientSendClose</a>
+, <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74">grpc::CallOpRecvInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a">grpc::CallOpRecvMessage&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77">grpc::CallOpSendInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e">grpc::CallOpSendMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b">grpc::CallOpServerSendStatus</a>
+</li>
+<li>AddTrailingMetadata()
+: <a class="el" href="classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c">grpc::ServerContext</a>
+</li>
+<li>ApplyToCall()
+: <a class="el" href="classgrpc_1_1_credentials.html#a2b3162e0dbb4530ac1c4b81a0339b1e1">grpc::Credentials</a>
+</li>
+<li>AsSecureCredentials()
+: <a class="el" href="classgrpc_1_1_credentials.html#aefc960d2b52b15f2561946e0f840874f">grpc::Credentials</a>
+</li>
+<li>AsyncGenericService()
+: <a class="el" href="classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae">grpc::AsyncGenericService</a>
+</li>
+<li>AsynchronousService()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b">grpc::AsynchronousService</a>
+</li>
+<li>AsyncNext()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4">grpc::CompletionQueue</a>
+</li>
+<li>auth_context()
+: <a class="el" href="classgrpc_1_1_client_context.html#a02f279bf74e26d7c32d0b18dc73dccea">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e">grpc::ServerContext</a>
+</li>
+<li>AuthPropertyIterator()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949">grpc::AuthPropertyIterator</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_b.html b/doc/ref/c++/html/functions_func_b.html
new file mode 100644
index 0000000000..b1971ecb99
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_b.html
@@ -0,0 +1,146 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li class="current"><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>begin()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a4a4a9e18e05e1a06cf25b8a77edd8c89">grpc::AuthContext</a>
+, <a class="el" href="classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8">grpc::Slice</a>
+</li>
+<li>BidiStreamingHandler()
+: <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+</li>
+<li>BuildAndStart()
+: <a class="el" href="classgrpc_1_1_server_builder.html#af284cd39b185043e8e92405c1ae0f310">grpc::ServerBuilder</a>
+</li>
+<li>ByteBuffer()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b">grpc::ByteBuffer</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_c.html b/doc/ref/c++/html/functions_func_c.html
new file mode 100644
index 0000000000..163654075c
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_c.html
@@ -0,0 +1,252 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li class="current"><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>Call()
+: <a class="el" href="classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a">grpc::Call</a>
+</li>
+<li>call()
+: <a class="el" href="classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38">grpc::Call</a>
+</li>
+<li>Call()
+: <a class="el" href="classgrpc_1_1_call.html#a82dc146935bbbb535d6c4c9fb9887373">grpc::Call</a>
+, <a class="el" href="classgrpc_1_1_generic_stub.html#a29d999cf06468cfe12d3cdc912cb0afb">grpc::GenericStub</a>
+</li>
+<li>CallOpClientRecvStatus()
+: <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de">grpc::CallOpClientRecvStatus</a>
+</li>
+<li>CallOpClientSendClose()
+: <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e">grpc::CallOpClientSendClose</a>
+</li>
+<li>CallOpGenericRecvMessage()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda">grpc::CallOpGenericRecvMessage</a>
+</li>
+<li>CallOpRecvInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8">grpc::CallOpRecvInitialMetadata</a>
+</li>
+<li>CallOpRecvMessage()
+: <a class="el" href="classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253">grpc::CallOpRecvMessage&lt; R &gt;</a>
+</li>
+<li>CallOpSendInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>CallOpSendMessage()
+: <a class="el" href="classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291">grpc::CallOpSendMessage</a>
+</li>
+<li>CallOpServerSendStatus()
+: <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4">grpc::CallOpServerSendStatus</a>
+</li>
+<li>CallOpSet()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+</li>
+<li>CallOpSetInterface()
+: <a class="el" href="classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000">grpc::CallOpSetInterface</a>
+</li>
+<li>census_context()
+: <a class="el" href="classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e">grpc::ServerContext</a>
+</li>
+<li>channel()
+: <a class="el" href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729">grpc::InternalStub</a>
+</li>
+<li>channel_tag()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">grpc::RpcMethod</a>
+</li>
+<li>ChannelArguments()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb">grpc::ChannelArguments</a>
+</li>
+<li>Clear()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80">grpc::ByteBuffer</a>
+, <a class="el" href="classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02">grpc::WriteOptions</a>
+</li>
+<li>clear_buffer_hint()
+: <a class="el" href="classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f">grpc::WriteOptions</a>
+</li>
+<li>clear_no_compression()
+: <a class="el" href="classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7">grpc::WriteOptions</a>
+</li>
+<li>client_metadata()
+: <a class="el" href="classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1">grpc::ServerContext</a>
+</li>
+<li>ClientAsyncReader()
+: <a class="el" href="classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4">grpc::ClientAsyncReader&lt; R &gt;</a>
+</li>
+<li>ClientAsyncReaderWriter()
+: <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ClientAsyncResponseReader()
+: <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf">grpc::ClientAsyncResponseReader&lt; R &gt;</a>
+</li>
+<li>ClientAsyncWriter()
+: <a class="el" href="classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6">grpc::ClientAsyncWriter&lt; W &gt;</a>
+</li>
+<li>ClientContext()
+: <a class="el" href="classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9">grpc::ClientContext</a>
+</li>
+<li>ClientReader()
+: <a class="el" href="classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56">grpc::ClientReader&lt; R &gt;</a>
+</li>
+<li>ClientReaderWriter()
+: <a class="el" href="classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ClientRecvStatus()
+: <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813">grpc::CallOpClientRecvStatus</a>
+</li>
+<li>ClientSendClose()
+: <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc">grpc::CallOpClientSendClose</a>
+</li>
+<li>ClientStreamingHandler()
+: <a class="el" href="classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+</li>
+<li>ClientWriter()
+: <a class="el" href="classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe">grpc::ClientWriter&lt; W &gt;</a>
+</li>
+<li>CompletionQueue()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a081a954044215a7ca8554da4220fb369">grpc::CompletionQueue</a>
+</li>
+<li>compression_algorithm()
+: <a class="el" href="classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171">grpc::ServerContext</a>
+</li>
+<li>compression_level()
+: <a class="el" href="classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8">grpc::ServerContext</a>
+</li>
+<li>condition_variable()
+: <a class="el" href="classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611">grpc::condition_variable</a>
+</li>
+<li>cq()
+: <a class="el" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">grpc::Call</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b">grpc::CompletionQueue</a>
+</li>
+<li>CreateCall()
+: <a class="el" href="classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0">grpc::ChannelInterface</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_d.html b/doc/ref/c++/html/functions_func_d.html
new file mode 100644
index 0000000000..fdc2cf67e6
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_d.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li class="current"><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>deadline()
+: <a class="el" href="classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052">grpc::ServerContext</a>
+</li>
+<li>Deserialize()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc</a>
+, <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5">grpc::SerializationTraits&lt; ByteBuffer, void &gt;</a>
+, <a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a>
+</li>
+<li>DeserializeFuncType()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt;</a>
+</li>
+<li>Dump()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#a1b284d25c0c3c594c386800c548048f1">grpc::ByteBuffer</a>
+</li>
+<li>DynamicThreadPool()
+: <a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#af4b6567a60ddfa8551dfbddab4cb7209">grpc::DynamicThreadPool</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_e.html b/doc/ref/c++/html/functions_func_e.html
new file mode 100644
index 0000000000..77414f4cb1
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_e.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li class="current"><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
+<li>end()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a81d358b427e0f1096e148918cdeef991">grpc::AuthContext</a>
+, <a class="el" href="classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60">grpc::Slice</a>
+</li>
+<li>error_code()
+: <a class="el" href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181">grpc::Status</a>
+</li>
+<li>error_message()
+: <a class="el" href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16">grpc::Status</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_f.html b/doc/ref/c++/html/functions_func_f.html
new file mode 100644
index 0000000000..7d344ea1d9
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_f.html
@@ -0,0 +1,182 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li class="current"><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>FillOps()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874">grpc::CallOpSetInterface</a>
+</li>
+<li>FinalizeResult()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+, <a class="el" href="classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d">grpc::CompletionQueueTag</a>
+, <a class="el" href="classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd">grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+</li>
+<li>FindPropertyValues()
+: <a class="el" href="classgrpc_1_1_auth_context.html#ad34c79f4934c974aa9e77ca69eed82aa">grpc::AuthContext</a>
+</li>
+<li>Finish()
+: <a class="el" href="classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f">grpc::ClientAsyncReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830">grpc::ClientAsyncResponseReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">grpc::ClientAsyncStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b">grpc::ClientAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df">grpc::ClientReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">grpc::ClientStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658">grpc::ClientWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004">grpc::ServerAsyncWriter&lt; W &gt;</a>
+</li>
+<li>FinishOp()
+: <a class="el" href="classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae">grpc::CallNoOp&lt; I &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f">grpc::CallOpClientRecvStatus</a>
+, <a class="el" href="classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656">grpc::CallOpClientSendClose</a>
+, <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb">grpc::CallOpRecvInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6">grpc::CallOpRecvMessage&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13">grpc::CallOpSendInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b">grpc::CallOpSendMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978">grpc::CallOpServerSendStatus</a>
+</li>
+<li>FinishWithError()
+: <a class="el" href="classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+</li>
+<li>FixedSizeThreadPool()
+: <a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#a7b1d9cbdaedc89f5f4dd6e5782bfe5e0">grpc::FixedSizeThreadPool</a>
+</li>
+<li>flags()
+: <a class="el" href="classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153">grpc::WriteOptions</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_g.html b/doc/ref/c++/html/functions_func_g.html
new file mode 100644
index 0000000000..96f7cff6c7
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_g.html
@@ -0,0 +1,163 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li class="current"><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>GenericStub()
+: <a class="el" href="classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88">grpc::GenericStub</a>
+</li>
+<li>get_buffer_hint()
+: <a class="el" href="classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef">grpc::WriteOptions</a>
+</li>
+<li>get_no_compression()
+: <a class="el" href="classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf">grpc::WriteOptions</a>
+</li>
+<li>GetMethod()
+: <a class="el" href="classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192">grpc::RpcService</a>
+</li>
+<li>GetMethodCount()
+: <a class="el" href="classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191">grpc::RpcService</a>
+</li>
+<li>GetPeerIdentity()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a94f653509ddd988ce8fd4f22746fead9">grpc::AuthContext</a>
+</li>
+<li>GetPeerIdentityPropertyName()
+: <a class="el" href="classgrpc_1_1_auth_context.html#ad7b2e589590246b953decd05cdaa4465">grpc::AuthContext</a>
+</li>
+<li>GetServerInitialMetadata()
+: <a class="el" href="classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15">grpc::ClientContext</a>
+</li>
+<li>GetServerTrailingMetadata()
+: <a class="el" href="classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3">grpc::ClientContext</a>
+</li>
+<li>GrpcLibrary()
+: <a class="el" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">grpc::GrpcLibrary</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_h.html b/doc/ref/c++/html/functions_func_h.html
new file mode 100644
index 0000000000..b2af7553aa
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_h.html
@@ -0,0 +1,142 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>handler()
+: <a class="el" href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1">grpc::RpcServiceMethod</a>
+</li>
+<li>HandlerParameter()
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>host()
+: <a class="el" href="classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc">grpc::GenericServerContext</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_i.html b/doc/ref/c++/html/functions_func_i.html
new file mode 100644
index 0000000000..cc6670197d
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_i.html
@@ -0,0 +1,139 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li class="current"><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>InternalStub()
+: <a class="el" href="classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c">grpc::InternalStub</a>
+</li>
+<li>IsCancelled()
+: <a class="el" href="classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864">grpc::ServerContext</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_j.html b/doc/ref/c++/html/functions_func_j.html
new file mode 100644
index 0000000000..1bd300def2
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_j.html
@@ -0,0 +1,136 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li class="current"><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
+<li>join()
+: <a class="el" href="classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f">grpc::thread</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_l.html b/doc/ref/c++/html/functions_func_l.html
new file mode 100644
index 0000000000..16dcf2cb8f
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_l.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li class="current"><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>Length()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#a9429e928982f8d94ff93a1a91032ad59">grpc::ByteBuffer</a>
+</li>
+<li>lock()
+: <a class="el" href="classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54">grpc::unique_lock&lt; mutex &gt;</a>
+</li>
+<li>lock_guard()
+: <a class="el" href="classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264">grpc::lock_guard&lt; mutex &gt;</a>
+</li>
+<li>lock_internal()
+: <a class="el" href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649">grpc::lock_guard&lt; mutex &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_m.html b/doc/ref/c++/html/functions_func_m.html
new file mode 100644
index 0000000000..a863ce4b7c
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_m.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li class="current"><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>max_message_size()
+: <a class="el" href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095">grpc::Call</a>
+</li>
+<li>method()
+: <a class="el" href="classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37">grpc::GenericServerContext</a>
+</li>
+<li>method_type()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6">grpc::RpcMethod</a>
+</li>
+<li>mutex()
+: <a class="el" href="classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581">grpc::mutex</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_n.html b/doc/ref/c++/html/functions_func_n.html
new file mode 100644
index 0000000000..915baa90ee
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_n.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li class="current"><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>name()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">grpc::RpcMethod</a>
+</li>
+<li>Next()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a">grpc::CompletionQueue</a>
+</li>
+<li>notify_all()
+: <a class="el" href="classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36">grpc::condition_variable</a>
+</li>
+<li>notify_one()
+: <a class="el" href="classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3">grpc::condition_variable</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_o.html b/doc/ref/c++/html/functions_func_o.html
new file mode 100644
index 0000000000..4217e613d1
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_o.html
@@ -0,0 +1,153 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li class="current"><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>ok()
+: <a class="el" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">grpc::Status</a>
+</li>
+<li>operator!=()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#af3d2671fe70be36b2ed26a75874f2fc1">grpc::AuthPropertyIterator</a>
+</li>
+<li>operator*()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a564f39b91f4168c6f660bbd3144f1f0e">grpc::AuthPropertyIterator</a>
+</li>
+<li>operator++()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6">grpc::AuthPropertyIterator</a>
+</li>
+<li>operator=()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be">grpc::ChannelArguments</a>
+, <a class="el" href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1">grpc::Slice</a>
+, <a class="el" href="classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841">grpc::WriteOptions</a>
+</li>
+<li>operator==()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#ab5ab6a2c9a4df2b02086513716553dee">grpc::AuthPropertyIterator</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_p.html b/doc/ref/c++/html/functions_func_p.html
new file mode 100644
index 0000000000..f8fc0fbddc
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_p.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li class="current"><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>peer()
+: <a class="el" href="classgrpc_1_1_client_context.html#a905d667d96613e022cd83c13dbedb4c3">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb">grpc::ServerContext</a>
+</li>
+<li>PerformOps()
+: <a class="el" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">grpc::Call</a>
+</li>
+<li>PerformOpsOnCall()
+: <a class="el" href="classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29">grpc::CallHook</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_r.html b/doc/ref/c++/html/functions_func_r.html
new file mode 100644
index 0000000000..ecdf1a4581
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_r.html
@@ -0,0 +1,212 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li class="current"><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>raw_deadline()
+: <a class="el" href="classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc">grpc::ServerContext</a>
+</li>
+<li>raw_time()
+: <a class="el" href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">grpc::TimePoint&lt; T &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2">grpc::TimePoint&lt; gpr_timespec &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;</a>
+</li>
+<li>Read()
+: <a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">grpc::AsyncReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d">grpc::ClientAsyncReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7">grpc::ClientReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">grpc::ReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0">grpc::ServerReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ReadInitialMetadata()
+: <a class="el" href="classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863">grpc::ClientAsyncReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b">grpc::ClientAsyncResponseReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">grpc::ClientAsyncStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7">grpc::ClientAsyncWriter&lt; W &gt;</a>
+</li>
+<li>RecvInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e">grpc::CallOpRecvInitialMetadata</a>
+</li>
+<li>RecvMessage()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c">grpc::CallOpRecvMessage&lt; R &gt;</a>
+</li>
+<li>RegisterAsyncGenericService()
+: <a class="el" href="classgrpc_1_1_server_builder.html#ac62b0aa4c0448907e02d15386d58ef86">grpc::ServerBuilder</a>
+</li>
+<li>RegisterAsyncService()
+: <a class="el" href="classgrpc_1_1_server_builder.html#a2107596214baf71230f4f270dec1d064">grpc::ServerBuilder</a>
+</li>
+<li>RegisterMethod()
+: <a class="el" href="classgrpc_1_1_channel_interface.html#a267926300784051328390b2f7648c99f">grpc::ChannelInterface</a>
+</li>
+<li>RegisterService()
+: <a class="el" href="classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66">grpc::ServerBuilder</a>
+</li>
+<li>RequestAsyncUnary()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990">grpc::AsynchronousService</a>
+</li>
+<li>RequestBidiStreaming()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608">grpc::AsynchronousService</a>
+</li>
+<li>RequestCall()
+: <a class="el" href="classgrpc_1_1_async_generic_service.html#aeab5c20e89a754d5add4bdaad01a3ef6">grpc::AsyncGenericService</a>
+</li>
+<li>RequestClientStreaming()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369">grpc::AsynchronousService</a>
+</li>
+<li>RequestServerStreaming()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564">grpc::AsynchronousService</a>
+</li>
+<li>RpcMethod()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94">grpc::RpcMethod</a>
+</li>
+<li>RpcMethodHandler()
+: <a class="el" href="classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+</li>
+<li>RpcServiceMethod()
+: <a class="el" href="classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da">grpc::RpcServiceMethod</a>
+</li>
+<li>RunHandler()
+: <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">grpc::MethodHandler</a>
+, <a class="el" href="classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_s.html b/doc/ref/c++/html/functions_func_s.html
new file mode 100644
index 0000000000..12412e4cb7
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_s.html
@@ -0,0 +1,258 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li class="current"><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>SendInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d">grpc::CallOpSendInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">grpc::ServerAsyncStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455">grpc::ServerAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b">grpc::ServerReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274">grpc::ServerWriter&lt; W &gt;</a>
+</li>
+<li>SendMessage()
+: <a class="el" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">grpc::CallOpSendMessage</a>
+</li>
+<li>Serialize()
+: <a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33">grpc::SerializationTraits&lt; ByteBuffer, void &gt;</a>
+, <a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a>
+</li>
+<li>ServerAsyncReader()
+: <a class="el" href="classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+</li>
+<li>ServerAsyncReaderWriter()
+: <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ServerAsyncResponseWriter()
+: <a class="el" href="classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+</li>
+<li>ServerAsyncWriter()
+: <a class="el" href="classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2">grpc::ServerAsyncWriter&lt; W &gt;</a>
+</li>
+<li>ServerBuilder()
+: <a class="el" href="classgrpc_1_1_server_builder.html#a208346e343cd01351492f0cace59b242">grpc::ServerBuilder</a>
+</li>
+<li>ServerContext()
+: <a class="el" href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">grpc::ServerContext</a>
+</li>
+<li>ServerReader()
+: <a class="el" href="classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521">grpc::ServerReader&lt; R &gt;</a>
+</li>
+<li>ServerReaderWriter()
+: <a class="el" href="classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ServerSendStatus()
+: <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7">grpc::CallOpServerSendStatus</a>
+</li>
+<li>ServerStreamingHandler()
+: <a class="el" href="classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+</li>
+<li>ServerWriter()
+: <a class="el" href="classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2">grpc::ServerWriter&lt; W &gt;</a>
+</li>
+<li>service()
+: <a class="el" href="classgrpc_1_1_synchronous_service.html#ad9eb51c9dc0cedfd838c23db47349796">grpc::SynchronousService</a>
+</li>
+<li>set_authority()
+: <a class="el" href="classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682">grpc::ClientContext</a>
+</li>
+<li>set_buffer_hint()
+: <a class="el" href="classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8">grpc::WriteOptions</a>
+</li>
+<li>set_census_context()
+: <a class="el" href="classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd">grpc::ClientContext</a>
+</li>
+<li>set_compression_algorithm()
+: <a class="el" href="classgrpc_1_1_client_context.html#a67a71b32afe1d71189aa3a24146ec61d">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72">grpc::ServerContext</a>
+</li>
+<li>set_compression_level()
+: <a class="el" href="classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d">grpc::ServerContext</a>
+</li>
+<li>set_credentials()
+: <a class="el" href="classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb">grpc::ClientContext</a>
+</li>
+<li>set_deadline()
+: <a class="el" href="classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6">grpc::ClientContext</a>
+</li>
+<li>set_max_message_size()
+: <a class="el" href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a">grpc::CallOpSetInterface</a>
+</li>
+<li>set_no_compression()
+: <a class="el" href="classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66">grpc::WriteOptions</a>
+</li>
+<li>set_output_tag()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+</li>
+<li>SetChannelArgs()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a90ce1857947d36ff894402ad10cb6048">grpc::ChannelArguments</a>
+</li>
+<li>SetCompressionAlgorithm()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#aaf332071bbdff5e4a7f3352f4ad564d5">grpc::ChannelArguments</a>
+</li>
+<li>SetInt()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a2b1c60568a4906bfe0b21781b09cdbbf">grpc::ChannelArguments</a>
+</li>
+<li>SetMaxMessageSize()
+: <a class="el" href="classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9">grpc::ServerBuilder</a>
+</li>
+<li>SetSslTargetNameOverride()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#af4182e659448184f9618f079a1570328">grpc::ChannelArguments</a>
+</li>
+<li>SetString()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a852ac2fe0ac7421fa82927ddda612947">grpc::ChannelArguments</a>
+</li>
+<li>SetThreadPool()
+: <a class="el" href="classgrpc_1_1_server_builder.html#aea5dd313149029114c60571e5ee8b4cd">grpc::ServerBuilder</a>
+</li>
+<li>Shutdown()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server.html#a777a9c8873ae4969585083e0e62482dc">grpc::Server</a>
+</li>
+<li>size()
+: <a class="el" href="classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724">grpc::Slice</a>
+</li>
+<li>Slice()
+: <a class="el" href="classgrpc_1_1_slice.html#a0a6b936d72f7ae35f083d003d3e0c8a3">grpc::Slice</a>
+</li>
+<li>SslServerCredentialsOptions()
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105">grpc::SslServerCredentialsOptions</a>
+</li>
+<li>Status()
+: <a class="el" href="classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c">grpc::Status</a>
+</li>
+<li>Swap()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d">grpc::ChannelArguments</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_t.html b/doc/ref/c++/html/functions_func_t.html
new file mode 100644
index 0000000000..dce50cdeba
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_t.html
@@ -0,0 +1,144 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li class="current"><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>thread()
+: <a class="el" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">grpc::thread</a>
+</li>
+<li>TimePoint()
+: <a class="el" href="classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad">grpc::TimePoint&lt; T &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007">grpc::TimePoint&lt; gpr_timespec &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;</a>
+</li>
+<li>TryCancel()
+: <a class="el" href="classgrpc_1_1_client_context.html#abd0f6715c30287b75288015eee628984">grpc::ClientContext</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_u.html b/doc/ref/c++/html/functions_func_u.html
new file mode 100644
index 0000000000..e57abea50b
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_u.html
@@ -0,0 +1,142 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>unique_lock()
+: <a class="el" href="classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633">grpc::unique_lock&lt; mutex &gt;</a>
+</li>
+<li>unlock()
+: <a class="el" href="classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd">grpc::unique_lock&lt; mutex &gt;</a>
+</li>
+<li>unlock_internal()
+: <a class="el" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">grpc::lock_guard&lt; mutex &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_w.html b/doc/ref/c++/html/functions_func_w.html
new file mode 100644
index 0000000000..1f34590761
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_w.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li class="current"><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>wait()
+: <a class="el" href="classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8">grpc::condition_variable</a>
+</li>
+<li>Wait()
+: <a class="el" href="classgrpc_1_1_server.html#a6f1ec2700c94637813178a5b5f71d6d5">grpc::Server</a>
+</li>
+<li>WaitForInitialMetadata()
+: <a class="el" href="classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e">grpc::ClientReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19">grpc::ClientReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a>
+</li>
+<li>Write()
+: <a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">grpc::AsyncWriterInterface&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a">grpc::ClientAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36">grpc::ClientWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5">grpc::ServerAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a">grpc::ServerWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">grpc::WriterInterface&lt; W &gt;</a>
+</li>
+<li>WriteOptions()
+: <a class="el" href="classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021">grpc::WriteOptions</a>
+</li>
+<li>WritesDone()
+: <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47">grpc::ClientAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822">grpc::ClientAsyncWriterInterface&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352">grpc::ClientWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5">grpc::ClientWriterInterface&lt; W &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_func_~.html b/doc/ref/c++/html/functions_func_~.html
new file mode 100644
index 0000000000..3f56fffa1a
--- /dev/null
+++ b/doc/ref/c++/html/functions_func_~.html
@@ -0,0 +1,235 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions_func.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_func_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_func_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_func_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_func_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_func_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_func_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_func_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_func_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_func_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_func_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_func_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_func_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_func_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_func_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_func_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_func_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_func_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_func_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_func_w.html#index_w"><span>w</span></a></li>
+ <li class="current"><a href="functions_func_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_~"></a>- ~ -</h3><ul>
+<li>~AsynchronousService()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00">grpc::AsynchronousService</a>
+</li>
+<li>~AsyncReaderInterface()
+: <a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">grpc::AsyncReaderInterface&lt; R &gt;</a>
+</li>
+<li>~AsyncWriterInterface()
+: <a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">grpc::AsyncWriterInterface&lt; W &gt;</a>
+</li>
+<li>~AuthContext()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464">grpc::AuthContext</a>
+</li>
+<li>~AuthPropertyIterator()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a91a3a2ce5085a948aac11d7371c13b49">grpc::AuthPropertyIterator</a>
+</li>
+<li>~ByteBuffer()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a">grpc::ByteBuffer</a>
+</li>
+<li>~CallHook()
+: <a class="el" href="classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d">grpc::CallHook</a>
+</li>
+<li>~ChannelArguments()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad">grpc::ChannelArguments</a>
+</li>
+<li>~ChannelInterface()
+: <a class="el" href="classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f">grpc::ChannelInterface</a>
+</li>
+<li>~ClientAsyncResponseReaderInterface()
+: <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>
+</li>
+<li>~ClientAsyncStreamingInterface()
+: <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">grpc::ClientAsyncStreamingInterface</a>
+</li>
+<li>~ClientContext()
+: <a class="el" href="classgrpc_1_1_client_context.html#aeb77ea760faf8f96e775812806c0a3d9">grpc::ClientContext</a>
+</li>
+<li>~ClientStreamingInterface()
+: <a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">grpc::ClientStreamingInterface</a>
+</li>
+<li>~CompletionQueue()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0">grpc::CompletionQueue</a>
+</li>
+<li>~CompletionQueueTag()
+: <a class="el" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">grpc::CompletionQueueTag</a>
+</li>
+<li>~condition_variable()
+: <a class="el" href="classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca">grpc::condition_variable</a>
+</li>
+<li>~Credentials()
+: <a class="el" href="classgrpc_1_1_credentials.html#af4e8a65a6cee2b847e11134671c213f2">grpc::Credentials</a>
+</li>
+<li>~DynamicThreadPool()
+: <a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#a9a81f1b15a357a8ca6cb3d7fef7a5456">grpc::DynamicThreadPool</a>
+</li>
+<li>~FixedSizeThreadPool()
+: <a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#aa31a8326a490c77e0e04b6df7ac3d7f8">grpc::FixedSizeThreadPool</a>
+</li>
+<li>~GrpcLibrary()
+: <a class="el" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">grpc::GrpcLibrary</a>
+</li>
+<li>~InternalStub()
+: <a class="el" href="classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e">grpc::InternalStub</a>
+</li>
+<li>~lock_guard()
+: <a class="el" href="classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2">grpc::lock_guard&lt; mutex &gt;</a>
+</li>
+<li>~MethodHandler()
+: <a class="el" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">grpc::MethodHandler</a>
+</li>
+<li>~mutex()
+: <a class="el" href="classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a">grpc::mutex</a>
+</li>
+<li>~ReaderInterface()
+: <a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">grpc::ReaderInterface&lt; R &gt;</a>
+</li>
+<li>~Server()
+: <a class="el" href="classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2">grpc::Server</a>
+</li>
+<li>~ServerAsyncStreamingInterface()
+: <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">grpc::ServerAsyncStreamingInterface</a>
+</li>
+<li>~ServerContext()
+: <a class="el" href="classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6">grpc::ServerContext</a>
+</li>
+<li>~ServerCredentials()
+: <a class="el" href="classgrpc_1_1_server_credentials.html#aa5df8a7a8f509a96f23ef8943a0306ff">grpc::ServerCredentials</a>
+</li>
+<li>~Slice()
+: <a class="el" href="classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94">grpc::Slice</a>
+</li>
+<li>~SynchronousService()
+: <a class="el" href="classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05">grpc::SynchronousService</a>
+</li>
+<li>~thread()
+: <a class="el" href="classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f">grpc::thread</a>
+</li>
+<li>~ThreadPoolInterface()
+: <a class="el" href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538">grpc::ThreadPoolInterface</a>
+</li>
+<li>~WriterInterface()
+: <a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">grpc::WriterInterface&lt; W &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_g.html b/doc/ref/c++/html/functions_g.html
new file mode 100644
index 0000000000..91bed92507
--- /dev/null
+++ b/doc/ref/c++/html/functions_g.html
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li class="current"><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>GenericStub()
+: <a class="el" href="classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88">grpc::GenericStub</a>
+</li>
+<li>get_buffer_hint()
+: <a class="el" href="classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef">grpc::WriteOptions</a>
+</li>
+<li>get_no_compression()
+: <a class="el" href="classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf">grpc::WriteOptions</a>
+</li>
+<li>GetMethod()
+: <a class="el" href="classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192">grpc::RpcService</a>
+</li>
+<li>GetMethodCount()
+: <a class="el" href="classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191">grpc::RpcService</a>
+</li>
+<li>GetPeerIdentity()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a94f653509ddd988ce8fd4f22746fead9">grpc::AuthContext</a>
+</li>
+<li>GetPeerIdentityPropertyName()
+: <a class="el" href="classgrpc_1_1_auth_context.html#ad7b2e589590246b953decd05cdaa4465">grpc::AuthContext</a>
+</li>
+<li>GetServerInitialMetadata()
+: <a class="el" href="classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15">grpc::ClientContext</a>
+</li>
+<li>GetServerTrailingMetadata()
+: <a class="el" href="classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3">grpc::ClientContext</a>
+</li>
+<li>GOT_EVENT
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08">grpc::CompletionQueue</a>
+</li>
+<li>got_message
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">grpc::CallOpRecvMessage&lt; R &gt;</a>
+</li>
+<li>GrpcLibrary()
+: <a class="el" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">grpc::GrpcLibrary</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_h.html b/doc/ref/c++/html/functions_h.html
new file mode 100644
index 0000000000..9b85391834
--- /dev/null
+++ b/doc/ref/c++/html/functions_h.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li class="current"><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_h"></a>- h -</h3><ul>
+<li>handler()
+: <a class="el" href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1">grpc::RpcServiceMethod</a>
+</li>
+<li>HandlerParameter()
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>host()
+: <a class="el" href="classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc">grpc::GenericServerContext</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_i.html b/doc/ref/c++/html/functions_i.html
new file mode 100644
index 0000000000..4203e1804b
--- /dev/null
+++ b/doc/ref/c++/html/functions_i.html
@@ -0,0 +1,146 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li class="current"><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>initial_metadata_
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>initial_metadata_count_
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>InternalStub()
+: <a class="el" href="classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c">grpc::InternalStub</a>
+</li>
+<li>IsCancelled()
+: <a class="el" href="classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864">grpc::ServerContext</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_j.html b/doc/ref/c++/html/functions_j.html
new file mode 100644
index 0000000000..248a685250
--- /dev/null
+++ b/doc/ref/c++/html/functions_j.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li class="current"><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
+<li>join()
+: <a class="el" href="classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f">grpc::thread</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_l.html b/doc/ref/c++/html/functions_l.html
new file mode 100644
index 0000000000..db7ca7df25
--- /dev/null
+++ b/doc/ref/c++/html/functions_l.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li class="current"><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>Length()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#a9429e928982f8d94ff93a1a91032ad59">grpc::ByteBuffer</a>
+</li>
+<li>lock()
+: <a class="el" href="classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54">grpc::unique_lock&lt; mutex &gt;</a>
+</li>
+<li>lock_guard()
+: <a class="el" href="classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264">grpc::lock_guard&lt; mutex &gt;</a>
+, <a class="el" href="classgrpc_1_1mutex.html#a4cfa68eb2ccf47f11c725b6773ff9a5b">grpc::mutex</a>
+</li>
+<li>lock_internal()
+: <a class="el" href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649">grpc::lock_guard&lt; mutex &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_m.html b/doc/ref/c++/html/functions_m.html
new file mode 100644
index 0000000000..e72a428ae7
--- /dev/null
+++ b/doc/ref/c++/html/functions_m.html
@@ -0,0 +1,150 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li class="current"><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>max_message_size()
+: <a class="el" href="classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095">grpc::Call</a>
+, <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>max_message_size_
+: <a class="el" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">grpc::CallOpSetInterface</a>
+</li>
+<li>method()
+: <a class="el" href="classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37">grpc::GenericServerContext</a>
+</li>
+<li>method_type()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6">grpc::RpcMethod</a>
+</li>
+<li>mutex()
+: <a class="el" href="classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581">grpc::mutex</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_n.html b/doc/ref/c++/html/functions_n.html
new file mode 100644
index 0000000000..f29803e094
--- /dev/null
+++ b/doc/ref/c++/html/functions_n.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li class="current"><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>name()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">grpc::RpcMethod</a>
+</li>
+<li>Next()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a">grpc::CompletionQueue</a>
+</li>
+<li>NextStatus
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572">grpc::CompletionQueue</a>
+</li>
+<li>NORMAL_RPC
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e">grpc::RpcMethod</a>
+</li>
+<li>notify_all()
+: <a class="el" href="classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36">grpc::condition_variable</a>
+</li>
+<li>notify_one()
+: <a class="el" href="classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3">grpc::condition_variable</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_o.html b/doc/ref/c++/html/functions_o.html
new file mode 100644
index 0000000000..5372b74110
--- /dev/null
+++ b/doc/ref/c++/html/functions_o.html
@@ -0,0 +1,157 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li class="current"><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>OK
+: <a class="el" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">grpc::Status</a>
+</li>
+<li>ok()
+: <a class="el" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">grpc::Status</a>
+</li>
+<li>operator!=()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#af3d2671fe70be36b2ed26a75874f2fc1">grpc::AuthPropertyIterator</a>
+</li>
+<li>operator*()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a564f39b91f4168c6f660bbd3144f1f0e">grpc::AuthPropertyIterator</a>
+</li>
+<li>operator++()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6">grpc::AuthPropertyIterator</a>
+</li>
+<li>operator=()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be">grpc::ChannelArguments</a>
+, <a class="el" href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1">grpc::Slice</a>
+, <a class="el" href="classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841">grpc::WriteOptions</a>
+</li>
+<li>operator==()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#ab5ab6a2c9a4df2b02086513716553dee">grpc::AuthPropertyIterator</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_p.html b/doc/ref/c++/html/functions_p.html
new file mode 100644
index 0000000000..26bd6cef84
--- /dev/null
+++ b/doc/ref/c++/html/functions_p.html
@@ -0,0 +1,160 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li class="current"><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>peer()
+: <a class="el" href="classgrpc_1_1_client_context.html#a905d667d96613e022cd83c13dbedb4c3">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb">grpc::ServerContext</a>
+</li>
+<li>pem_cert_chain
+: <a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b">grpc::SslCredentialsOptions</a>
+</li>
+<li>pem_key_cert_pairs
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d">grpc::SslServerCredentialsOptions</a>
+</li>
+<li>pem_private_key
+: <a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e">grpc::SslCredentialsOptions</a>
+</li>
+<li>pem_root_certs
+: <a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869">grpc::SslCredentialsOptions</a>
+, <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74">grpc::SslServerCredentialsOptions</a>
+</li>
+<li>PerformOps()
+: <a class="el" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">grpc::Call</a>
+</li>
+<li>PerformOpsOnCall()
+: <a class="el" href="classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29">grpc::CallHook</a>
+</li>
+<li>private_key
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050">grpc::SslServerCredentialsOptions::PemKeyCertPair</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_r.html b/doc/ref/c++/html/functions_r.html
new file mode 100644
index 0000000000..b31abe418d
--- /dev/null
+++ b/doc/ref/c++/html/functions_r.html
@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li class="current"><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>raw_deadline()
+: <a class="el" href="classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc">grpc::ServerContext</a>
+</li>
+<li>raw_time()
+: <a class="el" href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">grpc::TimePoint&lt; T &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2">grpc::TimePoint&lt; gpr_timespec &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;</a>
+</li>
+<li>Read()
+: <a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">grpc::AsyncReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d">grpc::ClientAsyncReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7">grpc::ClientReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">grpc::ReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0">grpc::ServerReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ReadInitialMetadata()
+: <a class="el" href="classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863">grpc::ClientAsyncReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b">grpc::ClientAsyncResponseReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">grpc::ClientAsyncStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7">grpc::ClientAsyncWriter&lt; W &gt;</a>
+</li>
+<li>RecvInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e">grpc::CallOpRecvInitialMetadata</a>
+</li>
+<li>RecvMessage()
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c">grpc::CallOpRecvMessage&lt; R &gt;</a>
+</li>
+<li>RegisterAsyncGenericService()
+: <a class="el" href="classgrpc_1_1_server_builder.html#ac62b0aa4c0448907e02d15386d58ef86">grpc::ServerBuilder</a>
+</li>
+<li>RegisterAsyncService()
+: <a class="el" href="classgrpc_1_1_server_builder.html#a2107596214baf71230f4f270dec1d064">grpc::ServerBuilder</a>
+</li>
+<li>RegisterMethod()
+: <a class="el" href="classgrpc_1_1_channel_interface.html#a267926300784051328390b2f7648c99f">grpc::ChannelInterface</a>
+</li>
+<li>RegisterService()
+: <a class="el" href="classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66">grpc::ServerBuilder</a>
+</li>
+<li>request
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>RequestAsyncUnary()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990">grpc::AsynchronousService</a>
+</li>
+<li>RequestBidiStreaming()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608">grpc::AsynchronousService</a>
+</li>
+<li>RequestCall()
+: <a class="el" href="classgrpc_1_1_async_generic_service.html#aeab5c20e89a754d5add4bdaad01a3ef6">grpc::AsyncGenericService</a>
+</li>
+<li>RequestClientStreaming()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369">grpc::AsynchronousService</a>
+</li>
+<li>RequestServerStreaming()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564">grpc::AsynchronousService</a>
+</li>
+<li>RpcMethod()
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94">grpc::RpcMethod</a>
+</li>
+<li>RpcMethodHandler
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a76b9bb18b02084e9eaa8c9b99c668676">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a76b9bb18b02084e9eaa8c9b99c668676">grpc::ServerContext</a>
+</li>
+<li>RpcServiceMethod()
+: <a class="el" href="classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da">grpc::RpcServiceMethod</a>
+</li>
+<li>RpcType
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">grpc::RpcMethod</a>
+</li>
+<li>RunHandler()
+: <a class="el" href="classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">grpc::MethodHandler</a>
+, <a class="el" href="classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_rela.html b/doc/ref/c++/html/functions_rela.html
new file mode 100644
index 0000000000..dae4563d38
--- /dev/null
+++ b/doc/ref/c++/html/functions_rela.html
@@ -0,0 +1,280 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Related Functions</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li class="current"><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="#index_:"><span>:</span></a></li>
+ <li><a href="#index_a"><span>a</span></a></li>
+ <li><a href="#index_b"><span>b</span></a></li>
+ <li><a href="#index_c"><span>c</span></a></li>
+ <li><a href="#index_l"><span>l</span></a></li>
+ <li><a href="#index_r"><span>r</span></a></li>
+ <li><a href="#index_s"><span>s</span></a></li>
+ <li class="current"><a href="#index_t"><span>t</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;
+
+<h3><a class="anchor" id="index_:"></a>- : -</h3><ul>
+<li>::grpc::ClientAsyncReader
+: <a class="el" href="classgrpc_1_1_client_context.html#af5343062a44a5633b144751e59969237">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientAsyncReaderWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#a5c0c96957129933bfe94a299c764eaa7">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientAsyncResponseReader
+: <a class="el" href="classgrpc_1_1_client_context.html#a4b00162a9bd86e07669f2af67f85c73a">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientAsyncWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#af3547958eadfaeb18692865bd73999ad">grpc::ClientContext</a>
+</li>
+<li>::grpc::ClientReader
+: <a class="el" href="classgrpc_1_1_client_context.html#ade499098cc91745c1c87147d7a7fb7bf">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#ade499098cc91745c1c87147d7a7fb7bf">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::ClientReaderWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#a6d5659aa24edba057895be774e2752ec">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a6d5659aa24edba057895be774e2752ec">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::ClientWriter
+: <a class="el" href="classgrpc_1_1_client_context.html#a4498fada67d531d99a8642f47d746544">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a4498fada67d531d99a8642f47d746544">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::Server
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a8c3fa4c066981aae114e41c3f9340144">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a8c3fa4c066981aae114e41c3f9340144">grpc::ServerContext</a>
+, <a class="el" href="classgrpc_1_1_server_credentials.html#a8c3fa4c066981aae114e41c3f9340144">grpc::ServerCredentials</a>
+</li>
+<li>::grpc::ServerAsyncReader
+: <a class="el" href="classgrpc_1_1_server_context.html#a774bb57486686958c67f29072de768ed">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerAsyncReaderWriter
+: <a class="el" href="classgrpc_1_1_server_context.html#a85f3f3dc5b92690c676b86571be20684">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerAsyncResponseWriter
+: <a class="el" href="classgrpc_1_1_server_context.html#a2c679b602d120c70a6713fe742704b4e">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerAsyncWriter
+: <a class="el" href="classgrpc_1_1_server_context.html#a6068d9e3369a1016e7b75350b80f4f45">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerContext
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6c5b4f4c66d254f341915982a17aac95">grpc::CompletionQueue</a>
+</li>
+<li>::grpc::ServerReader
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a4f20e2d049342ae00242bbc8021a44bd">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a4f20e2d049342ae00242bbc8021a44bd">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerReaderWriter
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a8c0a0d64c582a952c8f16d8eac71c677">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a8c0a0d64c582a952c8f16d8eac71c677">grpc::ServerContext</a>
+</li>
+<li>::grpc::ServerWriter
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a2f2dfa831a62c43ad5647a45080488e3">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a2f2dfa831a62c43ad5647a45080488e3">grpc::ServerContext</a>
+</li>
+<li>::grpc::testing::InteropContextInspector
+: <a class="el" href="classgrpc_1_1_server_context.html#a54fd90aaca3685b127354412368eb1c6">grpc::ServerContext</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>AsyncGenericService
+: <a class="el" href="classgrpc_1_1_server.html#afa12bc5912105e1966887391881de595">grpc::Server</a>
+</li>
+<li>AsynchronousService
+: <a class="el" href="classgrpc_1_1_server.html#a9f65421947ee8cbae15ff96b44f6d532">grpc::Server</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>BidiStreamingHandler
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a9fcf1462b4ea3c6a37e54076aafb93e1">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a9fcf1462b4ea3c6a37e54076aafb93e1">grpc::ServerContext</a>
+</li>
+<li>BlockingUnaryCall
+: <a class="el" href="classgrpc_1_1_client_context.html#a4aac0a120f3498d1151460ef89ce8446">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_completion_queue.html#a4aac0a120f3498d1151460ef89ce8446">grpc::CompletionQueue</a>
+</li>
+<li>ByteBuffer
+: <a class="el" href="classgrpc_1_1_slice.html#ac6c83f28f4b17ae317094a794e92e99e">grpc::Slice</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>CallOpClientRecvStatus
+: <a class="el" href="classgrpc_1_1_client_context.html#aa7c3f046b48d55b5a82cbee3fd84faa2">grpc::ClientContext</a>
+</li>
+<li>CallOpRecvInitialMetadata
+: <a class="el" href="classgrpc_1_1_client_context.html#a94ad025954d211da7d27efa58cb2ea91">grpc::ClientContext</a>
+</li>
+<li>Channel
+: <a class="el" href="classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d">grpc::ClientContext</a>
+</li>
+<li>ClientStreamingHandler
+: <a class="el" href="classgrpc_1_1_completion_queue.html#ae11583f8aab976055b1feae895d7e12a">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#ae11583f8aab976055b1feae895d7e12a">grpc::ServerContext</a>
+</li>
+<li>CompositeCredentials
+: <a class="el" href="classgrpc_1_1_credentials.html#a319db47fafb1868e66fd34b8bc084f3f">grpc::Credentials</a>
+</li>
+<li>condition_variable
+: <a class="el" href="classgrpc_1_1lock__guard.html#a89c9b6aa2256fa5efd92a333d96381d4">grpc::lock_guard&lt; mutex &gt;</a>
+, <a class="el" href="classgrpc_1_1mutex.html#a89c9b6aa2256fa5efd92a333d96381d4">grpc::mutex</a>
+</li>
+<li>CreateChannel
+: <a class="el" href="classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69">grpc::Credentials</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
+<li>lock_guard
+: <a class="el" href="classgrpc_1_1mutex.html#a4cfa68eb2ccf47f11c725b6773ff9a5b">grpc::mutex</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>RpcMethodHandler
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a76b9bb18b02084e9eaa8c9b99c668676">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#a76b9bb18b02084e9eaa8c9b99c668676">grpc::ServerContext</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>SecureAuthContext
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d">grpc::AuthPropertyIterator</a>
+</li>
+<li>SecureCredentials
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66">grpc::ChannelArguments</a>
+</li>
+<li>SerializationTraits&lt; ByteBuffer, void &gt;
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#ab90fe50537dd6fe009b7b913652420f0">grpc::ByteBuffer</a>
+</li>
+<li>Server
+: <a class="el" href="classgrpc_1_1_async_generic_service.html#ac2055578ac48afabe5af487878450f68">grpc::AsyncGenericService</a>
+, <a class="el" href="classgrpc_1_1_asynchronous_service.html#ac2055578ac48afabe5af487878450f68">grpc::AsynchronousService</a>
+, <a class="el" href="classgrpc_1_1_generic_server_context.html#ac2055578ac48afabe5af487878450f68">grpc::GenericServerContext</a>
+, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ac2055578ac48afabe5af487878450f68">grpc::ServerAsyncStreamingInterface</a>
+</li>
+<li>ServerBuilder
+: <a class="el" href="classgrpc_1_1_server.html#a8c2db91f514d534f06396d90c1b1f2c4">grpc::Server</a>
+, <a class="el" href="classgrpc_1_1_server_completion_queue.html#a8c2db91f514d534f06396d90c1b1f2c4">grpc::ServerCompletionQueue</a>
+</li>
+<li>ServerStreamingHandler
+: <a class="el" href="classgrpc_1_1_completion_queue.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c">grpc::ServerContext</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>testing::ChannelArgumentsTest
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b">grpc::ChannelArguments</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_s.html b/doc/ref/c++/html/functions_s.html
new file mode 100644
index 0000000000..6c9d432a82
--- /dev/null
+++ b/doc/ref/c++/html/functions_s.html
@@ -0,0 +1,298 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li class="current"><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>SecureAuthContext
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d">grpc::AuthPropertyIterator</a>
+</li>
+<li>SecureCredentials
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66">grpc::ChannelArguments</a>
+</li>
+<li>send_
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>SendInitialMetadata()
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d">grpc::CallOpSendInitialMetadata</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">grpc::ServerAsyncStreamingInterface</a>
+, <a class="el" href="classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455">grpc::ServerAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b">grpc::ServerReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274">grpc::ServerWriter&lt; W &gt;</a>
+</li>
+<li>SendMessage()
+: <a class="el" href="classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9">grpc::CallOpSendMessage</a>
+</li>
+<li>SerializationTraits&lt; ByteBuffer, void &gt;
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#ab90fe50537dd6fe009b7b913652420f0">grpc::ByteBuffer</a>
+</li>
+<li>Serialize()
+: <a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33">grpc::SerializationTraits&lt; ByteBuffer, void &gt;</a>
+, <a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a>
+</li>
+<li>Server
+: <a class="el" href="classgrpc_1_1_async_generic_service.html#ac2055578ac48afabe5af487878450f68">grpc::AsyncGenericService</a>
+, <a class="el" href="classgrpc_1_1_asynchronous_service.html#ac2055578ac48afabe5af487878450f68">grpc::AsynchronousService</a>
+, <a class="el" href="classgrpc_1_1_generic_server_context.html#ac2055578ac48afabe5af487878450f68">grpc::GenericServerContext</a>
+, <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ac2055578ac48afabe5af487878450f68">grpc::ServerAsyncStreamingInterface</a>
+</li>
+<li>server_context
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>SERVER_STREAMING
+: <a class="el" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775">grpc::RpcMethod</a>
+</li>
+<li>ServerAsyncReader()
+: <a class="el" href="classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e">grpc::ServerAsyncReader&lt; W, R &gt;</a>
+</li>
+<li>ServerAsyncReaderWriter()
+: <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ServerAsyncResponseWriter()
+: <a class="el" href="classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9">grpc::ServerAsyncResponseWriter&lt; W &gt;</a>
+</li>
+<li>ServerAsyncWriter()
+: <a class="el" href="classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2">grpc::ServerAsyncWriter&lt; W &gt;</a>
+</li>
+<li>ServerBuilder
+: <a class="el" href="classgrpc_1_1_server.html#a8c2db91f514d534f06396d90c1b1f2c4">grpc::Server</a>
+, <a class="el" href="classgrpc_1_1_server_builder.html#a208346e343cd01351492f0cace59b242">grpc::ServerBuilder</a>
+, <a class="el" href="classgrpc_1_1_server_completion_queue.html#a8c2db91f514d534f06396d90c1b1f2c4">grpc::ServerCompletionQueue</a>
+</li>
+<li>ServerContext()
+: <a class="el" href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">grpc::ServerContext</a>
+</li>
+<li>ServerReader()
+: <a class="el" href="classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521">grpc::ServerReader&lt; R &gt;</a>
+</li>
+<li>ServerReaderWriter()
+: <a class="el" href="classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+</li>
+<li>ServerSendStatus()
+: <a class="el" href="classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7">grpc::CallOpServerSendStatus</a>
+</li>
+<li>ServerStreamingHandler
+: <a class="el" href="classgrpc_1_1_completion_queue.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c">grpc::CompletionQueue</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c">grpc::ServerContext</a>
+, <a class="el" href="classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a>
+</li>
+<li>ServerWriter()
+: <a class="el" href="classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2">grpc::ServerWriter&lt; W &gt;</a>
+</li>
+<li>service()
+: <a class="el" href="classgrpc_1_1_synchronous_service.html#ad9eb51c9dc0cedfd838c23db47349796">grpc::SynchronousService</a>
+</li>
+<li>set_authority()
+: <a class="el" href="classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682">grpc::ClientContext</a>
+</li>
+<li>set_buffer_hint()
+: <a class="el" href="classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8">grpc::WriteOptions</a>
+</li>
+<li>set_census_context()
+: <a class="el" href="classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd">grpc::ClientContext</a>
+</li>
+<li>set_compression_algorithm()
+: <a class="el" href="classgrpc_1_1_client_context.html#a67a71b32afe1d71189aa3a24146ec61d">grpc::ClientContext</a>
+, <a class="el" href="classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72">grpc::ServerContext</a>
+</li>
+<li>set_compression_level()
+: <a class="el" href="classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d">grpc::ServerContext</a>
+</li>
+<li>set_credentials()
+: <a class="el" href="classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb">grpc::ClientContext</a>
+</li>
+<li>set_deadline()
+: <a class="el" href="classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6">grpc::ClientContext</a>
+</li>
+<li>set_max_message_size()
+: <a class="el" href="classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a">grpc::CallOpSetInterface</a>
+</li>
+<li>set_no_compression()
+: <a class="el" href="classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66">grpc::WriteOptions</a>
+</li>
+<li>set_output_tag()
+: <a class="el" href="classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a>
+</li>
+<li>SetChannelArgs()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a90ce1857947d36ff894402ad10cb6048">grpc::ChannelArguments</a>
+</li>
+<li>SetCompressionAlgorithm()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#aaf332071bbdff5e4a7f3352f4ad564d5">grpc::ChannelArguments</a>
+</li>
+<li>SetInt()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a2b1c60568a4906bfe0b21781b09cdbbf">grpc::ChannelArguments</a>
+</li>
+<li>SetMaxMessageSize()
+: <a class="el" href="classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9">grpc::ServerBuilder</a>
+</li>
+<li>SetSslTargetNameOverride()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#af4182e659448184f9618f079a1570328">grpc::ChannelArguments</a>
+</li>
+<li>SetString()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a852ac2fe0ac7421fa82927ddda612947">grpc::ChannelArguments</a>
+</li>
+<li>SetThreadPool()
+: <a class="el" href="classgrpc_1_1_server_builder.html#aea5dd313149029114c60571e5ee8b4cd">grpc::ServerBuilder</a>
+</li>
+<li>Shutdown()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670">grpc::CompletionQueue</a>
+</li>
+<li>SHUTDOWN
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b">grpc::CompletionQueue</a>
+</li>
+<li>Shutdown()
+: <a class="el" href="classgrpc_1_1_server.html#a777a9c8873ae4969585083e0e62482dc">grpc::Server</a>
+</li>
+<li>size()
+: <a class="el" href="classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724">grpc::Slice</a>
+</li>
+<li>Slice()
+: <a class="el" href="classgrpc_1_1_slice.html#a0a6b936d72f7ae35f083d003d3e0c8a3">grpc::Slice</a>
+</li>
+<li>SslServerCredentialsOptions()
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105">grpc::SslServerCredentialsOptions</a>
+</li>
+<li>Status()
+: <a class="el" href="classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c">grpc::Status</a>
+</li>
+<li>STEAL_REF
+: <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7">grpc::Slice</a>
+</li>
+<li>StealRef
+: <a class="el" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">grpc::Slice</a>
+</li>
+<li>Swap()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d">grpc::ChannelArguments</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_t.html b/doc/ref/c++/html/functions_t.html
new file mode 100644
index 0000000000..ae1aa63b5d
--- /dev/null
+++ b/doc/ref/c++/html/functions_t.html
@@ -0,0 +1,151 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li class="current"><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>testing::ChannelArgumentsTest
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b">grpc::ChannelArguments</a>
+</li>
+<li>thread()
+: <a class="el" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">grpc::thread</a>
+</li>
+<li>TIMEOUT
+: <a class="el" href="classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04">grpc::CompletionQueue</a>
+</li>
+<li>TimePoint()
+: <a class="el" href="classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad">grpc::TimePoint&lt; T &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007">grpc::TimePoint&lt; gpr_timespec &gt;</a>
+, <a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;</a>
+</li>
+<li>TryCancel()
+: <a class="el" href="classgrpc_1_1_client_context.html#abd0f6715c30287b75288015eee628984">grpc::ClientContext</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_u.html b/doc/ref/c++/html/functions_u.html
new file mode 100644
index 0000000000..a9f8a64b4b
--- /dev/null
+++ b/doc/ref/c++/html/functions_u.html
@@ -0,0 +1,143 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li class="current"><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>unique_lock()
+: <a class="el" href="classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633">grpc::unique_lock&lt; mutex &gt;</a>
+</li>
+<li>unlock()
+: <a class="el" href="classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd">grpc::unique_lock&lt; mutex &gt;</a>
+</li>
+<li>unlock_internal()
+: <a class="el" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">grpc::lock_guard&lt; mutex &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_vars.html b/doc/ref/c++/html/functions_vars.html
new file mode 100644
index 0000000000..3819f30c37
--- /dev/null
+++ b/doc/ref/c++/html/functions_vars.html
@@ -0,0 +1,162 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields - Variables</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>call
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>CANCELLED
+: <a class="el" href="classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab">grpc::Status</a>
+</li>
+<li>cert_chain
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e">grpc::SslServerCredentialsOptions::PemKeyCertPair</a>
+</li>
+<li>force_client_auth
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e">grpc::SslServerCredentialsOptions</a>
+</li>
+<li>got_message
+: <a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0">grpc::CallOpGenericRecvMessage</a>
+, <a class="el" href="classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57">grpc::CallOpRecvMessage&lt; R &gt;</a>
+</li>
+<li>initial_metadata_
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>initial_metadata_count_
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>max_message_size
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>max_message_size_
+: <a class="el" href="classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf">grpc::CallOpSetInterface</a>
+</li>
+<li>OK
+: <a class="el" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">grpc::Status</a>
+</li>
+<li>pem_cert_chain
+: <a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b">grpc::SslCredentialsOptions</a>
+</li>
+<li>pem_key_cert_pairs
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d">grpc::SslServerCredentialsOptions</a>
+</li>
+<li>pem_private_key
+: <a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e">grpc::SslCredentialsOptions</a>
+</li>
+<li>pem_root_certs
+: <a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869">grpc::SslCredentialsOptions</a>
+, <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74">grpc::SslServerCredentialsOptions</a>
+</li>
+<li>private_key
+: <a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050">grpc::SslServerCredentialsOptions::PemKeyCertPair</a>
+</li>
+<li>request
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4">grpc::MethodHandler::HandlerParameter</a>
+</li>
+<li>send_
+: <a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30">grpc::CallOpSendInitialMetadata</a>
+</li>
+<li>server_context
+: <a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c">grpc::MethodHandler::HandlerParameter</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_w.html b/doc/ref/c++/html/functions_w.html
new file mode 100644
index 0000000000..d09c1d5bbd
--- /dev/null
+++ b/doc/ref/c++/html/functions_w.html
@@ -0,0 +1,171 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li class="current"><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
+<li>wait()
+: <a class="el" href="classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8">grpc::condition_variable</a>
+</li>
+<li>Wait()
+: <a class="el" href="classgrpc_1_1_server.html#a6f1ec2700c94637813178a5b5f71d6d5">grpc::Server</a>
+</li>
+<li>WaitForInitialMetadata()
+: <a class="el" href="classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e">grpc::ClientReader&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19">grpc::ClientReaderInterface&lt; R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a>
+</li>
+<li>Write()
+: <a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">grpc::AsyncWriterInterface&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a">grpc::ClientAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36">grpc::ClientWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5">grpc::ServerAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467">grpc::ServerReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a">grpc::ServerWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">grpc::WriterInterface&lt; W &gt;</a>
+</li>
+<li>WriteOptions()
+: <a class="el" href="classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021">grpc::WriteOptions</a>
+</li>
+<li>WritesDone()
+: <a class="el" href="classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47">grpc::ClientAsyncWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822">grpc::ClientAsyncWriterInterface&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898">grpc::ClientReaderWriter&lt; R, W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352">grpc::ClientWriter&lt; W &gt;</a>
+, <a class="el" href="classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5">grpc::ClientWriterInterface&lt; W &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/functions_~.html b/doc/ref/c++/html/functions_~.html
new file mode 100644
index 0000000000..0ddb2275c0
--- /dev/null
+++ b/doc/ref/c++/html/functions_~.html
@@ -0,0 +1,236 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Data Fields</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li class="current"><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="functions.html"><span>All</span></a></li>
+ <li><a href="functions_func.html"><span>Functions</span></a></li>
+ <li><a href="functions_vars.html"><span>Variables</span></a></li>
+ <li><a href="functions_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="functions_eval.html"><span>Enumerator</span></a></li>
+ <li><a href="functions_rela.html"><span>Related&#160;Functions</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="functions.html#index_:"><span>:</span></a></li>
+ <li><a href="functions_a.html#index_a"><span>a</span></a></li>
+ <li><a href="functions_b.html#index_b"><span>b</span></a></li>
+ <li><a href="functions_c.html#index_c"><span>c</span></a></li>
+ <li><a href="functions_d.html#index_d"><span>d</span></a></li>
+ <li><a href="functions_e.html#index_e"><span>e</span></a></li>
+ <li><a href="functions_f.html#index_f"><span>f</span></a></li>
+ <li><a href="functions_g.html#index_g"><span>g</span></a></li>
+ <li><a href="functions_h.html#index_h"><span>h</span></a></li>
+ <li><a href="functions_i.html#index_i"><span>i</span></a></li>
+ <li><a href="functions_j.html#index_j"><span>j</span></a></li>
+ <li><a href="functions_l.html#index_l"><span>l</span></a></li>
+ <li><a href="functions_m.html#index_m"><span>m</span></a></li>
+ <li><a href="functions_n.html#index_n"><span>n</span></a></li>
+ <li><a href="functions_o.html#index_o"><span>o</span></a></li>
+ <li><a href="functions_p.html#index_p"><span>p</span></a></li>
+ <li><a href="functions_r.html#index_r"><span>r</span></a></li>
+ <li><a href="functions_s.html#index_s"><span>s</span></a></li>
+ <li><a href="functions_t.html#index_t"><span>t</span></a></li>
+ <li><a href="functions_u.html#index_u"><span>u</span></a></li>
+ <li><a href="functions_w.html#index_w"><span>w</span></a></li>
+ <li class="current"><a href="functions_~.html#index_~"><span>~</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all struct and union fields with links to the structures/unions they belong to:</div>
+
+<h3><a class="anchor" id="index_~"></a>- ~ -</h3><ul>
+<li>~AsynchronousService()
+: <a class="el" href="classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00">grpc::AsynchronousService</a>
+</li>
+<li>~AsyncReaderInterface()
+: <a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">grpc::AsyncReaderInterface&lt; R &gt;</a>
+</li>
+<li>~AsyncWriterInterface()
+: <a class="el" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">grpc::AsyncWriterInterface&lt; W &gt;</a>
+</li>
+<li>~AuthContext()
+: <a class="el" href="classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464">grpc::AuthContext</a>
+</li>
+<li>~AuthPropertyIterator()
+: <a class="el" href="classgrpc_1_1_auth_property_iterator.html#a91a3a2ce5085a948aac11d7371c13b49">grpc::AuthPropertyIterator</a>
+</li>
+<li>~ByteBuffer()
+: <a class="el" href="classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a">grpc::ByteBuffer</a>
+</li>
+<li>~CallHook()
+: <a class="el" href="classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d">grpc::CallHook</a>
+</li>
+<li>~ChannelArguments()
+: <a class="el" href="classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad">grpc::ChannelArguments</a>
+</li>
+<li>~ChannelInterface()
+: <a class="el" href="classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f">grpc::ChannelInterface</a>
+</li>
+<li>~ClientAsyncResponseReaderInterface()
+: <a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a>
+</li>
+<li>~ClientAsyncStreamingInterface()
+: <a class="el" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">grpc::ClientAsyncStreamingInterface</a>
+</li>
+<li>~ClientContext()
+: <a class="el" href="classgrpc_1_1_client_context.html#aeb77ea760faf8f96e775812806c0a3d9">grpc::ClientContext</a>
+</li>
+<li>~ClientStreamingInterface()
+: <a class="el" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">grpc::ClientStreamingInterface</a>
+</li>
+<li>~CompletionQueue()
+: <a class="el" href="classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0">grpc::CompletionQueue</a>
+</li>
+<li>~CompletionQueueTag()
+: <a class="el" href="classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab">grpc::CompletionQueueTag</a>
+</li>
+<li>~condition_variable()
+: <a class="el" href="classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca">grpc::condition_variable</a>
+</li>
+<li>~Credentials()
+: <a class="el" href="classgrpc_1_1_credentials.html#af4e8a65a6cee2b847e11134671c213f2">grpc::Credentials</a>
+</li>
+<li>~DynamicThreadPool()
+: <a class="el" href="classgrpc_1_1_dynamic_thread_pool.html#a9a81f1b15a357a8ca6cb3d7fef7a5456">grpc::DynamicThreadPool</a>
+</li>
+<li>~FixedSizeThreadPool()
+: <a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html#aa31a8326a490c77e0e04b6df7ac3d7f8">grpc::FixedSizeThreadPool</a>
+</li>
+<li>~GrpcLibrary()
+: <a class="el" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">grpc::GrpcLibrary</a>
+</li>
+<li>~InternalStub()
+: <a class="el" href="classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e">grpc::InternalStub</a>
+</li>
+<li>~lock_guard()
+: <a class="el" href="classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2">grpc::lock_guard&lt; mutex &gt;</a>
+</li>
+<li>~MethodHandler()
+: <a class="el" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">grpc::MethodHandler</a>
+</li>
+<li>~mutex()
+: <a class="el" href="classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a">grpc::mutex</a>
+</li>
+<li>~ReaderInterface()
+: <a class="el" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">grpc::ReaderInterface&lt; R &gt;</a>
+</li>
+<li>~Server()
+: <a class="el" href="classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2">grpc::Server</a>
+</li>
+<li>~ServerAsyncStreamingInterface()
+: <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">grpc::ServerAsyncStreamingInterface</a>
+</li>
+<li>~ServerContext()
+: <a class="el" href="classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6">grpc::ServerContext</a>
+</li>
+<li>~ServerCredentials()
+: <a class="el" href="classgrpc_1_1_server_credentials.html#aa5df8a7a8f509a96f23ef8943a0306ff">grpc::ServerCredentials</a>
+</li>
+<li>~Slice()
+: <a class="el" href="classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94">grpc::Slice</a>
+</li>
+<li>~SynchronousService()
+: <a class="el" href="classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05">grpc::SynchronousService</a>
+</li>
+<li>~thread()
+: <a class="el" href="classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f">grpc::thread</a>
+</li>
+<li>~ThreadPoolInterface()
+: <a class="el" href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538">grpc::ThreadPoolInterface</a>
+</li>
+<li>~WriterInterface()
+: <a class="el" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">grpc::WriterInterface&lt; W &gt;</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/generic__stub_8h.html b/doc/ref/c++/html/generic__stub_8h.html
new file mode 100644
index 0000000000..f374a8e394
--- /dev/null
+++ b/doc/ref/c++/html/generic__stub_8h.html
@@ -0,0 +1,126 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/generic_stub.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">generic_stub.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="byte__buffer_8h_source.html">grpc++/byte_buffer.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="stream_8h_source.html">grpc++/stream.h</a>&gt;</code><br/>
+</div>
+<p><a href="generic__stub_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_stub.html">grpc::GenericStub</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aba53fb6f2502caa167e9528e5c560539"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+ClientAsyncReaderWriter<br class="typebreak"/>
+&lt; ByteBuffer, ByteBuffer &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">grpc::GenericClientAsyncReaderWriter</a></td></tr>
+<tr class="separator:aba53fb6f2502caa167e9528e5c560539"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/generic__stub_8h_source.html b/doc/ref/c++/html/generic__stub_8h_source.html
new file mode 100644
index 0000000000..9c125f01c8
--- /dev/null
+++ b/doc/ref/c++/html/generic__stub_8h_source.html
@@ -0,0 +1,175 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/generic_stub.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">generic_stub.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="generic__stub_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_GENERIC_STUB_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_GENERIC_STUB_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="byte__buffer_8h.html">grpc++/byte_buffer.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="stream_8h.html">grpc++/stream.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539"> 42</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">typedef</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter&lt;ByteBuffer, ByteBuffer&gt;</a></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">GenericClientAsyncReaderWriter</a>;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">// Generic stubs provide a type-unsafe interface to call gRPC methods</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">// by name.</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classgrpc_1_1_generic_stub.html"> 48</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_generic_stub.html">GenericStub</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88"> 50</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88">GenericStub</a>(std::shared_ptr&lt;ChannelInterface&gt; channel)</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; : channel_(channel) {}</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// begin a call to a named method</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; std::unique_ptr&lt;GenericClientAsyncReaderWriter&gt; <a class="code" href="classgrpc_1_1_generic_stub.html#a29d999cf06468cfe12d3cdc912cb0afb">Call</a>(</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context, <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; method,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq, <span class="keywordtype">void</span>* tag);</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; std::shared_ptr&lt;ChannelInterface&gt; channel_;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;};</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif // GRPCXX_GENERIC_STUB_H</span></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:70</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="byte__buffer_8h_html"><div class="ttname"><a href="byte__buffer_8h.html">byte_buffer.h</a></div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="stream_8h_html"><div class="ttname"><a href="stream_8h.html">stream.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_generic_stub_html_a29d999cf06468cfe12d3cdc912cb0afb"><div class="ttname"><a href="classgrpc_1_1_generic_stub.html#a29d999cf06468cfe12d3cdc912cb0afb">grpc::GenericStub::Call</a></div><div class="ttdeci">std::unique_ptr&lt; GenericClientAsyncReaderWriter &gt; Call(ClientContext *context, const grpc::string &amp;method, CompletionQueue *cq, void *tag)</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="namespacegrpc_html_aba53fb6f2502caa167e9528e5c560539"><div class="ttname"><a href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">grpc::GenericClientAsyncReaderWriter</a></div><div class="ttdeci">ClientAsyncReaderWriter&lt; ByteBuffer, ByteBuffer &gt; GenericClientAsyncReaderWriter</div><div class="ttdef"><b>Definition:</b> generic_stub.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_generic_stub_html"><div class="ttname"><a href="classgrpc_1_1_generic_stub.html">grpc::GenericStub</a></div><div class="ttdef"><b>Definition:</b> generic_stub.h:48</div></div>
+<div class="ttc" id="classgrpc_1_1_generic_stub_html_a1523f381907ac18b841bb4064f2a3b88"><div class="ttname"><a href="classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88">grpc::GenericStub::GenericStub</a></div><div class="ttdeci">GenericStub(std::shared_ptr&lt; ChannelInterface &gt; channel)</div><div class="ttdef"><b>Definition:</b> generic_stub.h:50</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/globals.html b/doc/ref/c++/html/globals.html
new file mode 100644
index 0000000000..8488cc2ed1
--- /dev/null
+++ b/doc/ref/c++/html/globals.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="globals.html"><span>All</span></a></li>
+ <li><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all functions, variables, defines, enums, and typedefs with links to the files they belong to:</div><ul>
+<li>GRPC_CUSTOM_CODEDINPUTSTREAM
+: <a class="el" href="config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_MESSAGE
+: <a class="el" href="config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_PROTOBUF_INT64
+: <a class="el" href="config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_STRING
+: <a class="el" href="config_8h.html#af6ef913b6d13d83d79be41d007120992">config.h</a>
+</li>
+<li>GRPC_CUSTOM_ZEROCOPYINPUTSTREAM
+: <a class="el" href="config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM
+: <a class="el" href="config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8">config_protobuf.h</a>
+</li>
+<li>GRPC_FINAL
+: <a class="el" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">config.h</a>
+</li>
+<li>GRPC_OVERRIDE
+: <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">config.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/globals_defs.html b/doc/ref/c++/html/globals_defs.html
new file mode 100644
index 0000000000..c8f75e6c59
--- /dev/null
+++ b/doc/ref/c++/html/globals_defs.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Globals</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li class="current"><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="globals.html"><span>All</span></a></li>
+ <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>GRPC_CUSTOM_CODEDINPUTSTREAM
+: <a class="el" href="config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_MESSAGE
+: <a class="el" href="config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_PROTOBUF_INT64
+: <a class="el" href="config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_STRING
+: <a class="el" href="config_8h.html#af6ef913b6d13d83d79be41d007120992">config.h</a>
+</li>
+<li>GRPC_CUSTOM_ZEROCOPYINPUTSTREAM
+: <a class="el" href="config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0">config_protobuf.h</a>
+</li>
+<li>GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM
+: <a class="el" href="config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8">config_protobuf.h</a>
+</li>
+<li>GRPC_FINAL
+: <a class="el" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">config.h</a>
+</li>
+<li>GRPC_OVERRIDE
+: <a class="el" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">config.h</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/graph_legend.html b/doc/ref/c++/html/graph_legend.html
new file mode 100644
index 0000000000..0af9f04cd3
--- /dev/null
+++ b/doc/ref/c++/html/graph_legend.html
@@ -0,0 +1,154 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Graph Legend</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Graph Legend</div> </div>
+</div><!--header-->
+<div class="contents">
+<p>This page explains how to interpret the graphs that are generated by doxygen.</p>
+<p>Consider the following example: </p>
+<div class="fragment"><div class="line"><span class="comment">/*! Invisible class because of truncation */</span></div>
+<div class="line"><span class="keyword">class </span>Invisible { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Truncated class, inheritance relation is hidden */</span></div>
+<div class="line"><span class="keyword">class </span>Truncated : <span class="keyword">public</span> Invisible { };</div>
+<div class="line"></div>
+<div class="line"><span class="comment">/* Class not documented with doxygen comments */</span></div>
+<div class="line"><span class="keyword">class </span>Undocumented { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using public inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PublicBase : <span class="keyword">public</span> Truncated { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! A template class */</span></div>
+<div class="line"><span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <span class="keyword">class </span>Templ { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using protected inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>ProtectedBase { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is inherited using private inheritance */</span></div>
+<div class="line"><span class="keyword">class </span>PrivateBase { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Class that is used by the Inherited class */</span></div>
+<div class="line"><span class="keyword">class </span>Used { };</div>
+<div class="line"><span class="comment"></span></div>
+<div class="line"><span class="comment">/*! Super class that inherits a number of other classes */</span></div>
+<div class="line"><span class="keyword">class </span>Inherited : <span class="keyword">public</span> PublicBase,</div>
+<div class="line"> <span class="keyword">protected</span> ProtectedBase,</div>
+<div class="line"> <span class="keyword">private</span> PrivateBase,</div>
+<div class="line"> <span class="keyword">public</span> Undocumented,</div>
+<div class="line"> <span class="keyword">public</span> Templ&lt;int&gt;</div>
+<div class="line">{</div>
+<div class="line"> <span class="keyword">private</span>:</div>
+<div class="line"> Used *m_usedClass;</div>
+<div class="line">};</div>
+</div><!-- fragment --><p> This will result in the following graph:</p>
+<center><div class="image">
+<img src="graph_legend.png" />
+</div>
+</center><p>The boxes in the above graph have the following meaning: </p>
+<ul>
+<li>
+A filled gray box represents the struct or class for which the graph is generated. </li>
+<li>
+A box with a black border denotes a documented struct or class. </li>
+<li>
+A box with a grey border denotes an undocumented struct or class. </li>
+<li>
+A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries. </li>
+</ul>
+<p>The arrows have the following meaning: </p>
+<ul>
+<li>
+A dark blue arrow is used to visualize a public inheritance relation between two classes. </li>
+<li>
+A dark green arrow is used for protected inheritance. </li>
+<li>
+A dark red arrow is used for private inheritance. </li>
+<li>
+A purple dashed arrow is used if a class is contained or used by another class. The arrow is labeled with the variable(s) through which the pointed class or struct is accessible. </li>
+<li>
+A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labeled with the template parameters of the instance. </li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/graph_legend.md5 b/doc/ref/c++/html/graph_legend.md5
new file mode 100644
index 0000000000..a06ed050cb
--- /dev/null
+++ b/doc/ref/c++/html/graph_legend.md5
@@ -0,0 +1 @@
+387ff8eb65306fa251338d3c9bd7bfff \ No newline at end of file
diff --git a/doc/ref/c++/html/graph_legend.png b/doc/ref/c++/html/graph_legend.png
new file mode 100644
index 0000000000..6c1d0c239c
--- /dev/null
+++ b/doc/ref/c++/html/graph_legend.png
Binary files differ
diff --git a/doc/ref/c++/html/grpc__library_8h.html b/doc/ref/c++/html/grpc__library_8h.html
new file mode 100644
index 0000000000..733bf6f7d9
--- /dev/null
+++ b/doc/ref/c++/html/grpc__library_8h.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/grpc_library.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">grpc_library.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;grpc/grpc.h&gt;</code><br/>
+</div>
+<p><a href="grpc__library_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/grpc__library_8h_source.html b/doc/ref/c++/html/grpc__library_8h_source.html
new file mode 100644
index 0000000000..418506163e
--- /dev/null
+++ b/doc/ref/c++/html/grpc__library_8h_source.html
@@ -0,0 +1,153 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/grpc_library.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc_library.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="grpc__library_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_GRPC_LIBRARY_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_GRPC_LIBRARY_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;grpc/grpc.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classgrpc_1_1_grpc_library.html"> 41</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_grpc_library.html">GrpcLibrary</a> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528"> 43</a></span>&#160; <a class="code" href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">GrpcLibrary</a>() { grpc_init(); }</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8"> 44</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">~GrpcLibrary</a>() { grpc_shutdown(); }</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;};</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_GRPC_LIBRARY_H</span></div>
+<div class="ttc" id="classgrpc_1_1_grpc_library_html"><div class="ttname"><a href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></div><div class="ttdef"><b>Definition:</b> grpc_library.h:41</div></div>
+<div class="ttc" id="classgrpc_1_1_grpc_library_html_af026f86430cf235d7eaf532231a44528"><div class="ttname"><a href="classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528">grpc::GrpcLibrary::GrpcLibrary</a></div><div class="ttdeci">GrpcLibrary()</div><div class="ttdef"><b>Definition:</b> grpc_library.h:43</div></div>
+<div class="ttc" id="classgrpc_1_1_grpc_library_html_adadb2fbc794175c8c4578bf283b009a8"><div class="ttname"><a href="classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8">grpc::GrpcLibrary::~GrpcLibrary</a></div><div class="ttdeci">virtual ~GrpcLibrary()</div><div class="ttdef"><b>Definition:</b> grpc_library.h:44</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/hierarchy.html b/doc/ref/c++/html/hierarchy.html
new file mode 100644
index 0000000000..41eff77298
--- /dev/null
+++ b/doc/ref/c++/html/hierarchy.html
@@ -0,0 +1,336 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Class Hierarchy</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li class="current"><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Class Hierarchy</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">This inheritance list is sorted roughly, but not completely, alphabetically:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span><span onclick="javascript:toggleLevel(4);">4</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_async_generic_service.html" target="_self">grpc::AsyncGenericService</a></td><td class="desc"></td></tr>
+<tr id="row_1_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_asynchronous_service.html" target="_self">grpc::AsynchronousService</a></td><td class="desc"></td></tr>
+<tr id="row_2_" class="even"><td class="entry"><img id="arr_2_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_async_reader_interface.html" target="_self">grpc::AsyncReaderInterface&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_2_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_0_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_0_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_interface.html" target="_self">grpc::ClientAsyncReaderInterface&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_2_0_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader.html" target="_self">grpc::ClientAsyncReader&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_2_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_1_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_1_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html" target="_self">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_2_1_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_writer.html" target="_self">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_2_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_reader.html" target="_self">grpc::ServerAsyncReader&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_2_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_reader_writer.html" target="_self">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_3_"><td class="entry"><img id="arr_3_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('3_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_async_writer_interface.html" target="_self">grpc::AsyncWriterInterface&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_3_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html" target="_self">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_3_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_3_1_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('3_1_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_writer_interface.html" target="_self">grpc::ClientAsyncWriterInterface&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_3_1_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_writer.html" target="_self">grpc::ClientAsyncWriter&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_3_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_reader_writer.html" target="_self">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_3_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_writer.html" target="_self">grpc::ServerAsyncWriter&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_4_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_auth_context.html" target="_self">grpc::AuthContext</a></td><td class="desc"></td></tr>
+<tr id="row_5_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_byte_buffer.html" target="_self">grpc::ByteBuffer</a></td><td class="desc"></td></tr>
+<tr id="row_6_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call.html" target="_self">grpc::Call</a></td><td class="desc"></td></tr>
+<tr id="row_7_"><td class="entry"><img id="arr_7_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('7_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_hook.html" target="_self">grpc::CallHook</a></td><td class="desc"></td></tr>
+<tr id="row_7_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_channel_interface.html" target="_self">grpc::ChannelInterface</a></td><td class="desc"></td></tr>
+<tr id="row_7_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server.html" target="_self">grpc::Server</a></td><td class="desc"></td></tr>
+<tr id="row_8_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_no_op.html" target="_self">grpc::CallNoOp&lt; I &gt;</a></td><td class="desc">Default argument for <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> </td></tr>
+<tr id="row_9_"><td class="entry"><img id="arr_9_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('9_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_no_op.html" target="_self">grpc::CallNoOp&lt; 2 &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_9_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_9_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_9_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_9_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_9_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_" class="even"><td class="entry"><img id="arr_10_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('10_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_no_op.html" target="_self">grpc::CallNoOp&lt; 3 &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_4_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_5_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_6_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_7_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_8_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_10_9_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_"><td class="entry"><img id="arr_11_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('11_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_no_op.html" target="_self">grpc::CallNoOp&lt; 4 &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_8_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_9_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_10_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_11_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_11_11_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('11_11_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_11_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html" target="_self">grpc::SneakyCallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_12_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_13_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_11_14_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_" class="even"><td class="entry"><img id="arr_12_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('12_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_no_op.html" target="_self">grpc::CallNoOp&lt; 5 &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_4_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_5_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_6_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_7_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_8_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_9_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_10_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_11_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_12_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_13_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_12_14_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_"><td class="entry"><img id="arr_13_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('13_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_no_op.html" target="_self">grpc::CallNoOp&lt; 6 &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_8_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_9_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_10_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_11_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_12_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_13_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_13_14_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_14_" class="even"><td class="entry"><img id="arr_14_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('14_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html" target="_self">grpc::CallOpClientRecvStatus</a></td><td class="desc"></td></tr>
+<tr id="row_14_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_14_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_14_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_14_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_15_"><td class="entry"><img id="arr_15_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('15_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_client_send_close.html" target="_self">grpc::CallOpClientSendClose</a></td><td class="desc"></td></tr>
+<tr id="row_15_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_15_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_15_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_16_" class="even"><td class="entry"><img id="arr_16_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('16_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html" target="_self">grpc::CallOpGenericRecvMessage</a></td><td class="desc"></td></tr>
+<tr id="row_16_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_16_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_"><td class="entry"><img id="arr_17_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('17_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html" target="_self">grpc::CallOpRecvInitialMetadata</a></td><td class="desc"></td></tr>
+<tr id="row_17_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_17_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_18_" class="even"><td class="entry"><img id="arr_18_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('18_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_recv_message.html" target="_self">grpc::CallOpRecvMessage&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_18_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_18_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_18_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_19_"><td class="entry"><img id="arr_19_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('19_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html" target="_self">grpc::CallOpSendInitialMetadata</a></td><td class="desc"></td></tr>
+<tr id="row_19_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_19_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_19_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_19_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_19_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_19_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_20_" class="even"><td class="entry"><img id="arr_20_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('20_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_send_message.html" target="_self">grpc::CallOpSendMessage</a></td><td class="desc"></td></tr>
+<tr id="row_20_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_20_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_20_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_20_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_20_4_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_21_"><td class="entry"><img id="arr_21_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('21_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_server_send_status.html" target="_self">grpc::CallOpServerSendStatus</a></td><td class="desc"></td></tr>
+<tr id="row_21_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_21_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_22_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_channel_arguments.html" target="_self">grpc::ChannelArguments</a></td><td class="desc"></td></tr>
+<tr id="row_23_"><td class="entry"><img id="arr_23_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('23_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html" target="_self">grpc::ClientAsyncResponseReaderInterface&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_23_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_response_reader.html" target="_self">grpc::ClientAsyncResponseReader&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_24_" class="even"><td class="entry"><img id="arr_24_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('24_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html" target="_self">grpc::ClientAsyncStreamingInterface</a></td><td class="desc"></td></tr>
+<tr id="row_24_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_interface.html" target="_self">grpc::ClientAsyncReaderInterface&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_24_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html" target="_self">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_24_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_async_writer_interface.html" target="_self">grpc::ClientAsyncWriterInterface&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_25_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_context.html" target="_self">grpc::ClientContext</a></td><td class="desc"></td></tr>
+<tr id="row_26_" class="even"><td class="entry"><img id="arr_26_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('26_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_streaming_interface.html" target="_self">grpc::ClientStreamingInterface</a></td><td class="desc"></td></tr>
+<tr id="row_26_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_26_0_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('26_0_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_interface.html" target="_self">grpc::ClientReaderInterface&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_26_0_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader.html" target="_self">grpc::ClientReader&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_26_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_26_1_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('26_1_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html" target="_self">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_26_1_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_writer.html" target="_self">grpc::ClientReaderWriter&lt; R, W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_26_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_26_2_" src="ftv2plastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('26_2_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_writer_interface.html" target="_self">grpc::ClientWriterInterface&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_26_2_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_writer.html" target="_self">grpc::ClientWriter&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_"><td class="entry"><img id="arr_27_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('27_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_completion_queue_tag.html" target="_self">grpc::CompletionQueueTag</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_27_0_" src="ftv2plastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('27_0_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set_interface.html" target="_self">grpc::CallOpSetInterface</a></td><td class="desc">An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the lower layers, and as it is-a <a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>, also massages the final completion into the correct form for consumption in the C++ API </td></tr>
+<tr id="row_27_0_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_4_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_5_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_6_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_7_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_8_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_9_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_10_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_11_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_12_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_13_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_14_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; grpc::CallOpSendMessage &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_27_0_15_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_27_0_15_" src="ftv2plastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('27_0_15_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+<tr id="row_27_0_15_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html" target="_self">grpc::SneakyCallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">A <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> that does not post completions to the completion queue </td></tr>
+<tr id="row_28_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1condition__variable.html" target="_self">grpc::condition_variable</a></td><td class="desc"></td></tr>
+<tr id="row_29_"><td class="entry"><img id="arr_29_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('29_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html" target="_self">grpc::CallOpGenericRecvMessageHelper::DeserializeFunc</a></td><td class="desc"></td></tr>
+<tr id="row_29_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html" target="_self">grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_30_" class="even"><td class="entry"><img id="arr_30_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('30_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>enable_shared_from_this</b></td><td class="desc"></td></tr>
+<tr id="row_30_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_channel_interface.html" target="_self">grpc::ChannelInterface</a></td><td class="desc"></td></tr>
+<tr id="row_31_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_generic_stub.html" target="_self">grpc::GenericStub</a></td><td class="desc"></td></tr>
+<tr id="row_32_" class="even"><td class="entry"><img id="arr_32_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('32_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_grpc_library.html" target="_self">grpc::GrpcLibrary</a></td><td class="desc"></td></tr>
+<tr id="row_32_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_32_0_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('32_0_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_completion_queue.html" target="_self">grpc::CompletionQueue</a></td><td class="desc"></td></tr>
+<tr id="row_32_0_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_completion_queue.html" target="_self">grpc::ServerCompletionQueue</a></td><td class="desc"></td></tr>
+<tr id="row_32_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_credentials.html" target="_self">grpc::Credentials</a></td><td class="desc"></td></tr>
+<tr id="row_32_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server.html" target="_self">grpc::Server</a></td><td class="desc"></td></tr>
+<tr id="row_33_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html" target="_self">grpc::MethodHandler::HandlerParameter</a></td><td class="desc"></td></tr>
+<tr id="row_34_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_internal_stub.html" target="_self">grpc::InternalStub</a></td><td class="desc"></td></tr>
+<tr id="row_35_"><td class="entry"><img id="arr_35_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('35_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>iterator</b></td><td class="desc"></td></tr>
+<tr id="row_35_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_auth_property_iterator.html" target="_self">grpc::AuthPropertyIterator</a></td><td class="desc"></td></tr>
+<tr id="row_36_" class="even"><td class="entry"><img id="arr_36_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('36_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1lock__guard.html" target="_self">grpc::lock_guard&lt; mutex &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_36_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1unique__lock.html" target="_self">grpc::unique_lock&lt; mutex &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_37_"><td class="entry"><img id="arr_37_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('37_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_method_handler.html" target="_self">grpc::MethodHandler</a></td><td class="desc"></td></tr>
+<tr id="row_37_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html" target="_self">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_37_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_streaming_handler.html" target="_self">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_37_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_method_handler.html" target="_self">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_37_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_streaming_handler.html" target="_self">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_38_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1mutex.html" target="_self">grpc::mutex</a></td><td class="desc"></td></tr>
+<tr id="row_39_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html" target="_self">grpc::SslServerCredentialsOptions::PemKeyCertPair</a></td><td class="desc"></td></tr>
+<tr id="row_40_" class="even"><td class="entry"><img id="arr_40_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('40_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_reader_interface.html" target="_self">grpc::ReaderInterface&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_40_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_interface.html" target="_self">grpc::ClientReaderInterface&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_40_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html" target="_self">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_40_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_reader.html" target="_self">grpc::ServerReader&lt; R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_40_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_reader_writer.html" target="_self">grpc::ServerReaderWriter&lt; R, W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_41_"><td class="entry"><img id="arr_41_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('41_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_method.html" target="_self">grpc::RpcMethod</a></td><td class="desc"></td></tr>
+<tr id="row_41_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_service_method.html" target="_self">grpc::RpcServiceMethod</a></td><td class="desc"></td></tr>
+<tr id="row_42_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_rpc_service.html" target="_self">grpc::RpcService</a></td><td class="desc"></td></tr>
+<tr id="row_43_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_serialization_traits.html" target="_self">grpc::SerializationTraits&lt; Message, UnusedButHereForPartialTemplateSpecialization &gt;</a></td><td class="desc">Defines how to serialize and deserialize some type </td></tr>
+<tr id="row_44_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html" target="_self">grpc::SerializationTraits&lt; ByteBuffer, void &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_45_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html" target="_self">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_46_" class="even"><td class="entry"><img id="arr_46_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('46_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html" target="_self">grpc::ServerAsyncStreamingInterface</a></td><td class="desc"></td></tr>
+<tr id="row_46_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_reader.html" target="_self">grpc::ServerAsyncReader&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_46_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_reader_writer.html" target="_self">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_46_2_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_response_writer.html" target="_self">grpc::ServerAsyncResponseWriter&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_46_3_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_async_writer.html" target="_self">grpc::ServerAsyncWriter&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_47_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_builder.html" target="_self">grpc::ServerBuilder</a></td><td class="desc"></td></tr>
+<tr id="row_48_" class="even"><td class="entry"><img id="arr_48_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('48_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_context.html" target="_self">grpc::ServerContext</a></td><td class="desc"></td></tr>
+<tr id="row_48_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_generic_server_context.html" target="_self">grpc::GenericServerContext</a></td><td class="desc"></td></tr>
+<tr id="row_49_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_credentials.html" target="_self">grpc::ServerCredentials</a></td><td class="desc"></td></tr>
+<tr id="row_50_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_slice.html" target="_self">grpc::Slice</a></td><td class="desc"></td></tr>
+<tr id="row_51_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_ssl_credentials_options.html" target="_self">grpc::SslCredentialsOptions</a></td><td class="desc"></td></tr>
+<tr id="row_52_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html" target="_self">grpc::SslServerCredentialsOptions</a></td><td class="desc"></td></tr>
+<tr id="row_53_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_status.html" target="_self">grpc::Status</a></td><td class="desc"></td></tr>
+<tr id="row_54_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_synchronous_service.html" target="_self">grpc::SynchronousService</a></td><td class="desc"></td></tr>
+<tr id="row_55_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1thread.html" target="_self">grpc::thread</a></td><td class="desc"></td></tr>
+<tr id="row_56_" class="even"><td class="entry"><img id="arr_56_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('56_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_thread_pool_interface.html" target="_self">grpc::ThreadPoolInterface</a></td><td class="desc"></td></tr>
+<tr id="row_56_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html" target="_self">grpc::DynamicThreadPool</a></td><td class="desc"></td></tr>
+<tr id="row_56_1_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html" target="_self">grpc::FixedSizeThreadPool</a></td><td class="desc"></td></tr>
+<tr id="row_57_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_time_point.html" target="_self">grpc::TimePoint&lt; T &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_58_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html" target="_self">grpc::TimePoint&lt; gpr_timespec &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_59_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html" target="_self">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_60_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_write_options.html" target="_self">grpc::WriteOptions</a></td><td class="desc">Per-message write options </td></tr>
+<tr id="row_61_"><td class="entry"><img id="arr_61_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('61_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_writer_interface.html" target="_self">grpc::WriterInterface&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_61_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html" target="_self">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_61_1_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_client_writer_interface.html" target="_self">grpc::ClientWriterInterface&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_61_2_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_reader_writer.html" target="_self">grpc::ServerReaderWriter&lt; R, W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_61_3_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_server_writer.html" target="_self">grpc::ServerWriter&lt; W &gt;</a></td><td class="desc"></td></tr>
+<tr id="row_62_" class="even"><td class="entry"><img id="arr_62_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('62_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>Op1</b></td><td class="desc"></td></tr>
+<tr id="row_62_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+<tr id="row_63_"><td class="entry"><img id="arr_63_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('63_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>Op2</b></td><td class="desc"></td></tr>
+<tr id="row_63_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+<tr id="row_64_" class="even"><td class="entry"><img id="arr_64_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('64_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>Op3</b></td><td class="desc"></td></tr>
+<tr id="row_64_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+<tr id="row_65_"><td class="entry"><img id="arr_65_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('65_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>Op4</b></td><td class="desc"></td></tr>
+<tr id="row_65_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+<tr id="row_66_" class="even"><td class="entry"><img id="arr_66_" src="ftv2pnode.png" alt="o" width="16" height="22" onclick="toggleFolder('66_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>Op5</b></td><td class="desc"></td></tr>
+<tr id="row_66_0_" style="display:none;"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+<tr id="row_67_"><td class="entry"><img id="arr_67_" src="ftv2plastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('67_')"/><img src="ftv2cl.png" alt="C" width="24" height="22" /><b>Op6</b></td><td class="desc"></td></tr>
+<tr id="row_67_0_" class="even" style="display:none;"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="classgrpc_1_1_call_op_set.html" target="_self">grpc::CallOpSet&lt; Op1, Op2, Op3, Op4, Op5, Op6 &gt;</a></td><td class="desc">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a> </td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/index.html b/doc/ref/c++/html/index.html
new file mode 100644
index 0000000000..ef20d58e7e
--- /dev/null
+++ b/doc/ref/c++/html/index.html
@@ -0,0 +1,90 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Main Page</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li class="current"><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">GRPC C++ Documentation</div> </div>
+</div><!--header-->
+<div class="contents">
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/internal__stub_8h.html b/doc/ref/c++/html/internal__stub_8h.html
new file mode 100644
index 0000000000..1e8adb6a92
--- /dev/null
+++ b/doc/ref/c++/html/internal__stub_8h.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/internal_stub.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">internal_stub.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;<a class="el" href="channel__interface_8h_source.html">grpc++/channel_interface.h</a>&gt;</code><br/>
+</div>
+<p><a href="internal__stub_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_internal_stub.html">grpc::InternalStub</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/internal__stub_8h_source.html b/doc/ref/c++/html/internal__stub_8h_source.html
new file mode 100644
index 0000000000..2ddaea85d7
--- /dev/null
+++ b/doc/ref/c++/html/internal__stub_8h_source.html
@@ -0,0 +1,163 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/internal_stub.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">internal_stub.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="internal__stub_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_INTERNAL_STUB_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_INTERNAL_STUB_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="channel__interface_8h.html">grpc++/channel_interface.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classgrpc_1_1_internal_stub.html"> 43</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_internal_stub.html">InternalStub</a> {</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c"> 45</a></span>&#160; <a class="code" href="classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c">InternalStub</a>(<span class="keyword">const</span> std::shared_ptr&lt;ChannelInterface&gt;&amp; <a class="code" href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729">channel</a>)</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; : channel_(channel) {}</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e"> 47</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e">~InternalStub</a>() {}</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729"> 49</a></span>&#160; <a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* <a class="code" href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729">channel</a>() { <span class="keywordflow">return</span> channel_.get(); }</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">const</span> std::shared_ptr&lt;ChannelInterface&gt; channel_;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;};</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_INTERNAL_STUB_H</span></div>
+<div class="ttc" id="channel__interface_8h_html"><div class="ttname"><a href="channel__interface_8h.html">channel_interface.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></div><div class="ttdef"><b>Definition:</b> channel_interface.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_internal_stub_html_a43127d606386366f5935c08a21da059e"><div class="ttname"><a href="classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e">grpc::InternalStub::~InternalStub</a></div><div class="ttdeci">virtual ~InternalStub()</div><div class="ttdef"><b>Definition:</b> internal_stub.h:47</div></div>
+<div class="ttc" id="classgrpc_1_1_internal_stub_html_a5af6cf82c3f8218d94704226559e1b3c"><div class="ttname"><a href="classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c">grpc::InternalStub::InternalStub</a></div><div class="ttdeci">InternalStub(const std::shared_ptr&lt; ChannelInterface &gt; &amp;channel)</div><div class="ttdef"><b>Definition:</b> internal_stub.h:45</div></div>
+<div class="ttc" id="classgrpc_1_1_internal_stub_html"><div class="ttname"><a href="classgrpc_1_1_internal_stub.html">grpc::InternalStub</a></div><div class="ttdef"><b>Definition:</b> internal_stub.h:43</div></div>
+<div class="ttc" id="classgrpc_1_1_internal_stub_html_ae314e47d92a7aed9779724d3a81c2729"><div class="ttname"><a href="classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729">grpc::InternalStub::channel</a></div><div class="ttdeci">ChannelInterface * channel()</div><div class="ttdef"><b>Definition:</b> internal_stub.h:49</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/jquery.js b/doc/ref/c++/html/jquery.js
new file mode 100644
index 0000000000..c197801c5d
--- /dev/null
+++ b/doc/ref/c++/html/jquery.js
@@ -0,0 +1,31 @@
+/*!
+ * jQuery JavaScript Library v1.7.1
+ * http://jquery.com/
+ *
+ * Copyright 2011, John Resig
+ * Dual licensed under the MIT or GPL Version 2 licenses.
+ * http://jquery.org/license
+ *
+ * Includes Sizzle.js
+ * http://sizzlejs.com/
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ *
+ * Date: Mon Nov 21 21:11:03 2011 -0500
+ */
+(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b4<b3;b4++){if((b9=arguments[b4])!=null){for(b2 in b9){b0=b5[b2];b1=b9[b2];if(b5===b1){continue}if(b8&&b1&&(bF.isPlainObject(b1)||(b6=bF.isArray(b1)))){if(b6){b6=false;b7=b0&&bF.isArray(b0)?b0:[]}else{b7=b0&&bF.isPlainObject(b0)?b0:{}}b5[b2]=bF.extend(b8,b7,b1)}else{if(b1!==L){b5[b2]=b1}}}}}return b5};bF.extend({noConflict:function(b0){if(bb.$===bF){bb.$=bH}if(b0&&bb.jQuery===bF){bb.jQuery=bU}return bF},isReady:false,readyWait:1,holdReady:function(b0){if(b0){bF.readyWait++}else{bF.ready(true)}},ready:function(b0){if((b0===true&&!--bF.readyWait)||(b0!==true&&!bF.isReady)){if(!av.body){return setTimeout(bF.ready,1)}bF.isReady=true;if(b0!==true&&--bF.readyWait>0){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b4<b5;){if(b6.apply(b3[b4++],b2)===false){break}}}}else{if(b0){for(b1 in b3){if(b6.call(b3[b1],b1,b3[b1])===false){break}}}else{for(;b4<b5;){if(b6.call(b3[b4],b4,b3[b4++])===false){break}}}}return b3},trim:bO?function(b0){return b0==null?"":bO.call(b0)}:function(b0){return b0==null?"":b0.toString().replace(bI,"").replace(bE,"")},makeArray:function(b3,b1){var b0=b1||[];if(b3!=null){var b2=bF.type(b3);if(b3.length==null||b2==="string"||b2==="function"||b2==="regexp"||bF.isWindow(b3)){bz.call(b0,b3)}else{bF.merge(b0,b3)}}return b0},inArray:function(b2,b3,b1){var b0;if(b3){if(bv){return bv.call(b3,b2,b1)}b0=b3.length;b1=b1?b1<0?Math.max(0,b0+b1):b1:0;for(;b1<b0;b1++){if(b1 in b3&&b3[b1]===b2){return b1}}}return -1},merge:function(b4,b2){var b3=b4.length,b1=0;if(typeof b2.length==="number"){for(var b0=b2.length;b1<b0;b1++){b4[b3++]=b2[b1]}}else{while(b2[b1]!==L){b4[b3++]=b2[b1++]}}b4.length=b3;return b4},grep:function(b1,b6,b0){var b2=[],b5;b0=!!b0;for(var b3=0,b4=b1.length;b3<b4;b3++){b5=!!b6(b1[b3],b3);if(b0!==b5){b2.push(b1[b3])}}return b2},map:function(b0,b7,b8){var b5,b6,b4=[],b2=0,b1=b0.length,b3=b0 instanceof bF||b1!==L&&typeof b1==="number"&&((b1>0&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b2<b1;b2++){b5=b7(b0[b2],b2,b8);if(b5!=null){b4[b4.length]=b5}}}else{for(b6 in b0){b5=b7(b0[b6],b6,b8);if(b5!=null){b4[b4.length]=b5}}}return b4.concat.apply([],b4)},guid:1,proxy:function(b4,b3){if(typeof b3==="string"){var b2=b4[b3];b3=b4;b4=b2}if(!bF.isFunction(b4)){return L}var b0=bK.call(arguments,2),b1=function(){return b4.apply(b3,b0.concat(bK.call(arguments)))};b1.guid=b4.guid=b4.guid||b1.guid||bF.guid++;return b1},access:function(b0,b8,b6,b2,b5,b7){var b1=b0.length;if(typeof b8==="object"){for(var b3 in b8){bF.access(b0,b3,b8[b3],b2,b5,b6)}return b0}if(b6!==L){b2=!b7&&b2&&bF.isFunction(b6);for(var b4=0;b4<b1;b4++){b5(b0[b4],b8,b2?b6.call(b0[b4],b4,b5(b0[b4],b8)):b6,b7)}return b0}return b1?b5(b0[0],b8):L},now:function(){return(new Date()).getTime()},uaMatch:function(b1){b1=b1.toLowerCase();var b0=by.exec(b1)||bR.exec(b1)||bQ.exec(b1)||b1.indexOf("compatible")<0&&bS.exec(b1)||[];return{browser:b0[1]||"",version:b0[2]||"0"}},sub:function(){function b0(b3,b4){return new b0.fn.init(b3,b4)}bF.extend(true,b0,this);b0.superclass=this;b0.fn=b0.prototype=this();b0.fn.constructor=b0;b0.sub=this.sub;b0.fn.init=function b2(b3,b4){if(b4&&b4 instanceof bF&&!(b4 instanceof b0)){b4=b0(b4)}return bF.fn.init.call(this,b3,b4,b1)};b0.fn.init.prototype=b0.fn;var b1=b0(av);return b0},browser:{}});bF.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(b1,b0){bx["[object "+b0+"]"]=b0.toLowerCase()});bV=bF.uaMatch(bX);if(bV.browser){bF.browser[bV.browser]=true;bF.browser.version=bV.version}if(bF.browser.webkit){bF.browser.safari=true}if(bM.test("\xA0")){bI=/^[\s\xA0]+/;bE=/[\s\xA0]+$/}bD=bF(av);if(av.addEventListener){e=function(){av.removeEventListener("DOMContentLoaded",e,false);bF.ready()}}else{if(av.attachEvent){e=function(){if(av.readyState==="complete"){av.detachEvent("onreadystatechange",e);bF.ready()}}}}function bw(){if(bF.isReady){return}try{av.documentElement.doScroll("left")}catch(b0){setTimeout(bw,1);return}bF.ready()}return bF})();var a2={};function X(e){var bv=a2[e]={},bw,bx;e=e.split(/\s+/);for(bw=0,bx=e.length;bw<bx;bw++){bv[e[bw]]=true}return bv}b.Callbacks=function(bw){bw=bw?(a2[bw]||X(bw)):{};var bB=[],bC=[],bx,by,bv,bz,bA,bE=function(bF){var bG,bJ,bI,bH,bK;for(bG=0,bJ=bF.length;bG<bJ;bG++){bI=bF[bG];bH=b.type(bI);if(bH==="array"){bE(bI)}else{if(bH==="function"){if(!bw.unique||!bD.has(bI)){bB.push(bI)}}}}},e=function(bG,bF){bF=bF||[];bx=!bw.memory||[bG,bF];by=true;bA=bv||0;bv=0;bz=bB.length;for(;bB&&bA<bz;bA++){if(bB[bA].apply(bG,bF)===false&&bw.stopOnFalse){bx=true;break}}by=false;if(bB){if(!bw.once){if(bC&&bC.length){bx=bC.shift();bD.fireWith(bx[0],bx[1])}}else{if(bx===true){bD.disable()}else{bB=[]}}}},bD={add:function(){if(bB){var bF=bB.length;bE(arguments);if(by){bz=bB.length}else{if(bx&&bx!==true){bv=bF;e(bx[0],bx[1])}}}return this},remove:function(){if(bB){var bF=arguments,bH=0,bI=bF.length;for(;bH<bI;bH++){for(var bG=0;bG<bB.length;bG++){if(bF[bH]===bB[bG]){if(by){if(bG<=bz){bz--;if(bG<=bA){bA--}}}bB.splice(bG--,1);if(bw.unique){break}}}}}return this},has:function(bG){if(bB){var bF=0,bH=bB.length;for(;bF<bH;bF++){if(bG===bB[bF]){return true}}}return false},empty:function(){bB=[];return this},disable:function(){bB=bC=bx=L;return this},disabled:function(){return !bB},lock:function(){bC=L;if(!bx||bx===true){bD.disable()}return this},locked:function(){return !bC},fireWith:function(bG,bF){if(bC){if(by){if(!bw.once){bC.push([bG,bF])}}else{if(!(bw.once&&bx)){e(bG,bF)}}}return this},fire:function(){bD.fireWith(this,arguments);return this},fired:function(){return !!bx}};return bD};var aJ=[].slice;b.extend({Deferred:function(by){var bx=b.Callbacks("once memory"),bw=b.Callbacks("once memory"),bv=b.Callbacks("memory"),e="pending",bA={resolve:bx,reject:bw,notify:bv},bC={done:bx.add,fail:bw.add,progress:bv.add,state:function(){return e},isResolved:bx.fired,isRejected:bw.fired,then:function(bE,bD,bF){bB.done(bE).fail(bD).progress(bF);return this},always:function(){bB.done.apply(bB,arguments).fail.apply(bB,arguments);return this},pipe:function(bF,bE,bD){return b.Deferred(function(bG){b.each({done:[bF,"resolve"],fail:[bE,"reject"],progress:[bD,"notify"]},function(bI,bL){var bH=bL[0],bK=bL[1],bJ;if(b.isFunction(bH)){bB[bI](function(){bJ=bH.apply(this,arguments);if(bJ&&b.isFunction(bJ.promise)){bJ.promise().then(bG.resolve,bG.reject,bG.notify)}else{bG[bK+"With"](this===bB?bG:this,[bJ])}})}else{bB[bI](bG[bK])}})}).promise()},promise:function(bE){if(bE==null){bE=bC}else{for(var bD in bC){bE[bD]=bC[bD]}}return bE}},bB=bC.promise({}),bz;for(bz in bA){bB[bz]=bA[bz].fire;bB[bz+"With"]=bA[bz].fireWith}bB.done(function(){e="resolved"},bw.disable,bv.lock).fail(function(){e="rejected"},bx.disable,bv.lock);if(by){by.call(bB,bB)}return bB},when:function(bA){var bx=aJ.call(arguments,0),bv=0,e=bx.length,bB=new Array(e),bw=e,by=e,bC=e<=1&&bA&&b.isFunction(bA.promise)?bA:b.Deferred(),bE=bC.promise();function bD(bF){return function(bG){bx[bF]=arguments.length>1?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv<e;bv++){if(bx[bv]&&bx[bv].promise&&b.isFunction(bx[bv].promise)){bx[bv].promise().then(bD(bv),bC.reject,bz(bv))
+}else{--bw}}if(!bw){bC.resolveWith(bC,bx)}}else{if(bC!==bA){bC.resolveWith(bC,e?[bA]:[])}}return bE}});b.support=(function(){var bJ,bI,bF,bG,bx,bE,bA,bD,bz,bK,bB,by,bw,bv=av.createElement("div"),bH=av.documentElement;bv.setAttribute("className","t");bv.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav></:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="<div "+e+"><div></div></div><table "+e+" cellpadding='0' cellspacing='0'><tr><td></td></tr></table>";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="<div style='width:4px;'></div>";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA<bz;bA++){delete bB[bv[bA]]}if(!(by?S:b.isEmptyObject)(bB)){return}}}if(!by){delete e[bw].data;if(!S(e[bw])){return}}if(b.support.deleteExpando||!e.setInterval){delete e[bw]}else{e[bw]=null}if(bD){if(b.support.deleteExpando){delete bx[bC]}else{if(bx.removeAttribute){bx.removeAttribute(bC)}else{bx[bC]=null}}}},_data:function(bv,e,bw){return b.data(bv,e,bw,true)},acceptData:function(bv){if(bv.nodeName){var e=b.noData[bv.nodeName.toLowerCase()];if(e){return !(e===true||bv.getAttribute("classid")!==e)}}return true}});b.fn.extend({data:function(by,bA){var bB,e,bw,bz=null;if(typeof by==="undefined"){if(this.length){bz=b.data(this[0]);if(this[0].nodeType===1&&!b._data(this[0],"parsedAttrs")){e=this[0].attributes;for(var bx=0,bv=e.length;bx<bv;bx++){bw=e[bx].name;if(bw.indexOf("data-")===0){bw=b.camelCase(bw.substring(5));a5(this[0],bw,bz[bw])}}b._data(this[0],"parsedAttrs",true)}}return bz}else{if(typeof by==="object"){return this.each(function(){b.data(this,by)})}}bB=by.split(".");bB[1]=bB[1]?"."+bB[1]:"";if(bA===L){bz=this.triggerHandler("getData"+bB[1]+"!",[bB[0]]);if(bz===L&&this.length){bz=b.data(this[0],by);bz=a5(this[0],by,bz)}return bz===L&&bB[1]?this.data(bB[0]):bz}else{return this.each(function(){var bC=b(this),bD=[bB[0],bA];bC.triggerHandler("setData"+bB[1]+"!",bD);b.data(this,by,bA);bC.triggerHandler("changeData"+bB[1]+"!",bD)})}},removeData:function(e){return this.each(function(){b.removeData(this,e)})}});function a5(bx,bw,by){if(by===L&&bx.nodeType===1){var bv="data-"+bw.replace(aA,"-$1").toLowerCase();by=bx.getAttribute(bv);if(typeof by==="string"){try{by=by==="true"?true:by==="false"?false:by==="null"?null:b.isNumeric(by)?parseFloat(by):aS.test(by)?b.parseJSON(by):by}catch(bz){}b.data(bx,bw,by)}else{by=L}}return by}function S(bv){for(var e in bv){if(e==="data"&&b.isEmptyObject(bv[e])){continue}if(e!=="toJSON"){return false}}return true}function bi(by,bx,bA){var bw=bx+"defer",bv=bx+"queue",e=bx+"mark",bz=b._data(by,bw);if(bz&&(bA==="queue"||!b._data(by,bv))&&(bA==="mark"||!b._data(by,e))){setTimeout(function(){if(!b._data(by,bv)&&!b._data(by,e)){b.removeData(by,bw,true);bz.fire()}},0)}}b.extend({_mark:function(bv,e){if(bv){e=(e||"fx")+"mark";b._data(bv,e,(b._data(bv,e)||0)+1)}},_unmark:function(by,bx,bv){if(by!==true){bv=bx;bx=by;by=false}if(bx){bv=bv||"fx";var e=bv+"mark",bw=by?0:((b._data(bx,e)||1)-1);if(bw){b._data(bx,e,bw)}else{b.removeData(bx,e,true);bi(bx,bv,"mark")}}},queue:function(bv,e,bx){var bw;if(bv){e=(e||"fx")+"queue";bw=b._data(bv,e);if(bx){if(!bw||b.isArray(bx)){bw=b._data(bv,e,b.makeArray(bx))}else{bw.push(bx)}}return bw||[]}},dequeue:function(by,bx){bx=bx||"fx";var bv=b.queue(by,bx),bw=bv.shift(),e={};if(bw==="inprogress"){bw=bv.shift()}if(bw){if(bx==="fx"){bv.unshift("inprogress")}b._data(by,bx+".run",e);bw.call(by,function(){b.dequeue(by,bx)},e)}if(!bv.length){b.removeData(by,bx+"queue "+bx+".run",true);bi(by,bx,"queue")}}});b.fn.extend({queue:function(e,bv){if(typeof e!=="string"){bv=e;e="fx"}if(bv===L){return b.queue(this[0],e)}return this.each(function(){var bw=b.queue(this,e,bv);if(e==="fx"&&bw[0]!=="inprogress"){b.dequeue(this,e)}})},dequeue:function(e){return this.each(function(){b.dequeue(this,e)})},delay:function(bv,e){bv=b.fx?b.fx.speeds[bv]||bv:bv;e=e||"fx";return this.queue(e,function(bx,bw){var by=setTimeout(bx,bv);bw.stop=function(){clearTimeout(by)}})},clearQueue:function(e){return this.queue(e||"fx",[])},promise:function(bD,bw){if(typeof bD!=="string"){bw=bD;bD=L}bD=bD||"fx";var e=b.Deferred(),bv=this,by=bv.length,bB=1,bz=bD+"defer",bA=bD+"queue",bC=bD+"mark",bx;function bE(){if(!(--bB)){e.resolveWith(bv,[bv])}}while(by--){if((bx=b.data(bv[by],bz,L,true)||(b.data(bv[by],bA,L,true)||b.data(bv[by],bC,L,true))&&b.data(bv[by],bz,b.Callbacks("once memory"),true))){bB++;bx.add(bE)}}bE();return e.promise()}});var aP=/[\n\t\r]/g,af=/\s+/,aU=/\r/g,g=/^(?:button|input)$/i,D=/^(?:button|input|object|select|textarea)$/i,l=/^a(?:rea)?$/i,ao=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,F=b.support.getSetAttribute,be,aY,aF;b.fn.extend({attr:function(e,bv){return b.access(this,e,bv,true,b.attr)},removeAttr:function(e){return this.each(function(){b.removeAttr(this,e)})},prop:function(e,bv){return b.access(this,e,bv,true,b.prop)},removeProp:function(e){e=b.propFix[e]||e;return this.each(function(){try{this[e]=L;delete this[e]}catch(bv){}})},addClass:function(by){var bA,bw,bv,bx,bz,bB,e;if(b.isFunction(by)){return this.each(function(bC){b(this).addClass(by.call(this,bC,this.className))})}if(by&&typeof by==="string"){bA=by.split(af);for(bw=0,bv=this.length;bw<bv;bw++){bx=this[bw];if(bx.nodeType===1){if(!bx.className&&bA.length===1){bx.className=by}else{bz=" "+bx.className+" ";for(bB=0,e=bA.length;bB<e;bB++){if(!~bz.indexOf(" "+bA[bB]+" ")){bz+=bA[bB]+" "}}bx.className=b.trim(bz)}}}}return this},removeClass:function(bz){var bA,bw,bv,by,bx,bB,e;if(b.isFunction(bz)){return this.each(function(bC){b(this).removeClass(bz.call(this,bC,this.className))})}if((bz&&typeof bz==="string")||bz===L){bA=(bz||"").split(af);for(bw=0,bv=this.length;bw<bv;bw++){by=this[bw];if(by.nodeType===1&&by.className){if(bz){bx=(" "+by.className+" ").replace(aP," ");for(bB=0,e=bA.length;bB<e;bB++){bx=bx.replace(" "+bA[bB]+" "," ")}by.className=b.trim(bx)}else{by.className=""}}}}return this},toggleClass:function(bx,bv){var bw=typeof bx,e=typeof bv==="boolean";if(b.isFunction(bx)){return this.each(function(by){b(this).toggleClass(bx.call(this,by,this.className,bv),bv)})}return this.each(function(){if(bw==="string"){var bA,bz=0,by=b(this),bB=bv,bC=bx.split(af);while((bA=bC[bz++])){bB=e?bB:!by.hasClass(bA);by[bB?"addClass":"removeClass"](bA)}}else{if(bw==="undefined"||bw==="boolean"){if(this.className){b._data(this,"__className__",this.className)}this.className=this.className||bx===false?"":b._data(this,"__className__")||""}}})},hasClass:function(e){var bx=" "+e+" ",bw=0,bv=this.length;for(;bw<bv;bw++){if(this[bw].nodeType===1&&(" "+this[bw].className+" ").replace(aP," ").indexOf(bx)>-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv<bz;bv++){bx=bC[bv];if(bx.selected&&(b.support.optDisabled?!bx.disabled:bx.getAttribute("disabled")===null)&&(!bx.parentNode.disabled||!b.nodeName(bx.parentNode,"optgroup"))){bA=b(bx).val();if(bw){return bA}bB.push(bA)}}if(bw&&!bB.length&&bC.length){return b(bC[by]).val()}return bB},set:function(bv,bw){var e=b.makeArray(bw);b(bv).find("option").each(function(){this.selected=b.inArray(b(this).val(),e)>=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;
+if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw<e;bw++){bv=bA[bw];if(bv){by=b.propFix[bv]||bv;b.attr(bx,bv,"");bx.removeAttribute(F?bv:by);if(ao.test(bv)&&by in bx){bx[by]=false}}}}},attrHooks:{type:{set:function(e,bv){if(g.test(e.nodeName)&&e.parentNode){b.error("type property can't be changed")}else{if(!b.support.radioValue&&bv==="radio"&&b.nodeName(e,"input")){var bw=e.value;e.setAttribute("type",bv);if(bw){e.value=bw}return bv}}}},value:{get:function(bv,e){if(be&&b.nodeName(bv,"button")){return be.get(bv,e)}return e in bv?bv.value:null},set:function(bv,bw,e){if(be&&b.nodeName(bv,"button")){return be.set(bv,bw,e)}bv.value=bw}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(bz,bx,bA){var bw,e,by,bv=bz.nodeType;if(!bz||bv===3||bv===8||bv===2){return}by=bv!==1||!b.isXMLDoc(bz);if(by){bx=b.propFix[bx]||bx;e=b.propHooks[bx]}if(bA!==L){if(e&&"set" in e&&(bw=e.set(bz,bA,bx))!==L){return bw}else{return(bz[bx]=bA)}}else{if(e&&"get" in e&&(bw=e.get(bz,bx))!==null){return bw}else{return bz[bx]}}},propHooks:{tabIndex:{get:function(bv){var e=bv.getAttributeNode("tabindex");return e&&e.specified?parseInt(e.value,10):D.test(bv.nodeName)||l.test(bv.nodeName)&&bv.href?0:L}}}});b.attrHooks.tabindex=b.propHooks.tabIndex;aY={get:function(bv,e){var bx,bw=b.prop(bv,e);return bw===true||typeof bw!=="boolean"&&(bx=bv.getAttributeNode(e))&&bx.nodeValue!==false?e.toLowerCase():L},set:function(bv,bx,e){var bw;if(bx===false){b.removeAttr(bv,e)}else{bw=b.propFix[e]||e;if(bw in bv){bv[bw]=true}bv.setAttribute(e,e.toLowerCase())}return e}};if(!F){aF={name:true,id:true};be=b.valHooks.button={get:function(bw,bv){var e;e=bw.getAttributeNode(bv);return e&&(aF[bv]?e.nodeValue!=="":e.specified)?e.nodeValue:L},set:function(bw,bx,bv){var e=bw.getAttributeNode(bv);if(!e){e=av.createAttribute(bv);bw.setAttributeNode(e)}return(e.nodeValue=bx+"")}};b.attrHooks.tabindex.set=be.set;b.each(["width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{set:function(bw,bx){if(bx===""){bw.setAttribute(e,"auto");return bx}}})});b.attrHooks.contenteditable={get:be.get,set:function(bv,bw,e){if(bw===""){bw="false"}be.set(bv,bw,e)}}}if(!b.support.hrefNormalized){b.each(["href","src","width","height"],function(bv,e){b.attrHooks[e]=b.extend(b.attrHooks[e],{get:function(bx){var bw=bx.getAttribute(e,2);return bw===null?L:bw}})})}if(!b.support.style){b.attrHooks.style={get:function(e){return e.style.cssText.toLowerCase()||L},set:function(e,bv){return(e.style.cssText=""+bv)}}}if(!b.support.optSelected){b.propHooks.selected=b.extend(b.propHooks.selected,{get:function(bv){var e=bv.parentNode;if(e){e.selectedIndex;if(e.parentNode){e.parentNode.selectedIndex}}return null}})}if(!b.support.enctype){b.propFix.enctype="encoding"}if(!b.support.checkOn){b.each(["radio","checkbox"],function(){b.valHooks[this]={get:function(e){return e.getAttribute("value")===null?"on":e.value}}})}b.each(["radio","checkbox"],function(){b.valHooks[this]=b.extend(b.valHooks[this],{set:function(e,bv){if(b.isArray(bv)){return(e.checked=b.inArray(b(e).val(),bv)>=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI<bC.length;bI++){bH=n.exec(bC[bI])||[];bF=bH[1];e=(bH[2]||"").split(".").sort();bE=b.event.special[bF]||{};bF=(by?bE.delegateType:bE.bindType)||bF;bE=b.event.special[bF]||{};bG=b.extend({type:bF,origType:bH[1],data:bA,handler:bJ,guid:bJ.guid,selector:by,quick:Y(by),namespace:e.join(".")},bv);bw=bK[bF];if(!bw){bw=bK[bF]=[];bw.delegateCount=0;if(!bE.setup||bE.setup.call(bx,bA,e,bB)===false){if(bx.addEventListener){bx.addEventListener(bF,bB,false)}else{if(bx.attachEvent){bx.attachEvent("on"+bF,bB)}}}}if(bE.add){bE.add.call(bx,bG);if(!bG.handler.guid){bG.handler.guid=bJ.guid}}if(by){bw.splice(bw.delegateCount++,0,bG)}else{bw.push(bG)}b.event.global[bF]=true}bx=null},global:{},remove:function(bJ,bE,bv,bH,bB){var bI=b.hasData(bJ)&&b._data(bJ),bF,bx,bz,bL,bC,bA,bG,bw,by,bK,bD,e;if(!bI||!(bw=bI.events)){return}bE=b.trim(bt(bE||"")).split(" ");for(bF=0;bF<bE.length;bF++){bx=n.exec(bE[bF])||[];bz=bL=bx[1];bC=bx[2];if(!bz){for(bz in bw){b.event.remove(bJ,bz+bE[bF],bv,bH,true)}continue}by=b.event.special[bz]||{};bz=(bH?by.delegateType:by.bindType)||bz;bD=bw[bz]||[];bA=bD.length;bC=bC?new RegExp("(^|\\.)"+bC.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(bG=0;bG<bD.length;bG++){e=bD[bG];if((bB||bL===e.origType)&&(!bv||bv.guid===e.guid)&&(!bC||bC.test(e.namespace))&&(!bH||bH===e.selector||bH==="**"&&e.selector)){bD.splice(bG--,1);if(e.selector){bD.delegateCount--}if(by.remove){by.remove.call(bJ,e)}}}if(bD.length===0&&bA!==bD.length){if(!by.teardown||by.teardown.call(bJ,bC)===false){b.removeEvent(bJ,bz,bI.handle)}delete bw[bz]}}if(b.isEmptyObject(bw)){bK=bI.handle;if(bK){bK.elem=null}b.removeData(bJ,["events","handle"],true)}},customEvent:{getData:true,setData:true,changeData:true},trigger:function(bv,bD,bA,bJ){if(bA&&(bA.nodeType===3||bA.nodeType===8)){return}var bG=bv.type||bv,bx=[],e,bw,bC,bH,bz,by,bF,bE,bB,bI;if(T.test(bG+b.event.triggered)){return}if(bG.indexOf("!")>=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bC<bB.length&&!bv.isPropagationStopped();bC++){bH=bB[bC][0];bv.type=bB[bC][1];bE=(b._data(bH,"events")||{})[bv.type]&&b._data(bH,"handle");if(bE){bE.apply(bH,bD)}bE=by&&bH[by];if(bE&&b.acceptData(bH)&&bE.apply(bH,bD)===false){bv.preventDefault()}}bv.type=bG;if(!bJ&&!bv.isDefaultPrevented()){if((!bF._default||bF._default.apply(bA.ownerDocument,bD)===false)&&!(bG==="click"&&b.nodeName(bA,"a"))&&b.acceptData(bA)){if(by&&bA[bG]&&((bG!=="focus"&&bG!=="blur")||bv.target.offsetWidth!==0)&&!b.isWindow(bA)){bz=bA[by];if(bz){bA[by]=null}b.event.triggered=bG;bA[bG]();b.event.triggered=L;if(bz){bA[by]=bz}}}}return bv.result},dispatch:function(e){e=b.event.fix(e||bb.event);var bz=((b._data(this,"events")||{})[e.type]||[]),bA=bz.delegateCount,bG=[].slice.call(arguments,0),by=!e.exclusive&&!e.namespace,bH=[],bC,bB,bK,bx,bF,bE,bv,bD,bI,bw,bJ;bG[0]=e;e.delegateTarget=this;if(bA&&!e.target.disabled&&!(e.button&&e.type==="click")){bx=b(this);bx.context=this.ownerDocument||this;for(bK=e.target;bK!=this;bK=bK.parentNode||this){bE={};bD=[];bx[0]=bK;for(bC=0;bC<bA;bC++){bI=bz[bC];bw=bI.selector;if(bE[bw]===L){bE[bw]=(bI.quick?j(bK,bI.quick):bx.is(bw))}if(bE[bw]){bD.push(bI)}}if(bD.length){bH.push({elem:bK,matches:bD})}}}if(bz.length>bA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC<bH.length&&!e.isPropagationStopped();bC++){bv=bH[bC];e.currentTarget=bv.elem;for(bB=0;bB<bv.matches.length&&!e.isImmediatePropagationStopped();bB++){bI=bv.matches[bB];if(by||(!e.namespace&&!bI.namespace)||e.namespace_re&&e.namespace_re.test(bI.namespace)){e.data=bI.data;e.handleObj=bI;bF=((b.event.special[bI.origType]||{}).handle||bI.handler).apply(bv.elem,bG);if(bF!==L){e.result=bF;if(bF===false){e.preventDefault();e.stopPropagation()}}}}}return e.result},props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(bv,e){if(bv.which==null){bv.which=e.charCode!=null?e.charCode:e.keyCode}return bv}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(bx,bw){var by,bz,e,bv=bw.button,bA=bw.fromElement;if(bx.pageX==null&&bw.clientX!=null){by=bx.target.ownerDocument||av;bz=by.documentElement;e=by.body;bx.pageX=bw.clientX+(bz&&bz.scrollLeft||e&&e.scrollLeft||0)-(bz&&bz.clientLeft||e&&e.clientLeft||0);bx.pageY=bw.clientY+(bz&&bz.scrollTop||e&&e.scrollTop||0)-(bz&&bz.clientTop||e&&e.clientTop||0)}if(!bx.relatedTarget&&bA){bx.relatedTarget=bA===bx.target?bw.toElement:bA}if(!bx.which&&bv!==L){bx.which=(bv&1?1:(bv&2?3:(bv&4?2:0)))}return bx}},fix:function(bw){if(bw[b.expando]){return bw}var bv,bz,e=bw,bx=b.event.fixHooks[bw.type]||{},by=bx.props?this.props.concat(bx.props):this.props;bw=b.Event(e);for(bv=by.length;bv;){bz=by[--bv];bw[bz]=e[bz]}if(!bw.target){bw.target=e.srcElement||av}if(bw.target.nodeType===3){bw.target=bw.target.parentNode}if(bw.metaKey===L){bw.metaKey=bw.ctrlKey}return bx.filter?bx.filter(bw,e):bw},special:{ready:{setup:b.bindReady},load:{noBubble:true},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(bw,bv,e){if(b.isWindow(this)){this.onbeforeunload=e}},teardown:function(bv,e){if(this.onbeforeunload===e){this.onbeforeunload=null}}}},simulate:function(bw,by,bx,bv){var bz=b.extend(new b.Event(),bx,{type:bw,isSimulated:true,originalEvent:{}});if(bv){b.event.trigger(bz,null,by)}else{b.event.dispatch.call(by,bz)}if(bz.isDefaultPrevented()){bx.preventDefault()}}};b.event.handle=b.event.dispatch;b.removeEvent=av.removeEventListener?function(bv,e,bw){if(bv.removeEventListener){bv.removeEventListener(e,bw,false)}}:function(bv,e,bw){if(bv.detachEvent){bv.detachEvent("on"+e,bw)}};b.Event=function(bv,e){if(!(this instanceof b.Event)){return new b.Event(bv,e)}if(bv&&bv.type){this.originalEvent=bv;this.type=bv.type;this.isDefaultPrevented=(bv.defaultPrevented||bv.returnValue===false||bv.getPreventDefault&&bv.getPreventDefault())?i:bk}else{this.type=bv}if(e){b.extend(this,e)}this.timeStamp=bv&&bv.timeStamp||b.now();this[b.expando]=true};function bk(){return false}function i(){return true}b.Event.prototype={preventDefault:function(){this.isDefaultPrevented=i;var bv=this.originalEvent;if(!bv){return}if(bv.preventDefault){bv.preventDefault()}else{bv.returnValue=false}},stopPropagation:function(){this.isPropagationStopped=i;var bv=this.originalEvent;if(!bv){return}if(bv.stopPropagation){bv.stopPropagation()}bv.cancelBubble=true},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=i;this.stopPropagation()},isDefaultPrevented:bk,isPropagationStopped:bk,isImmediatePropagationStopped:bk};b.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(bv,e){b.event.special[bv]={delegateType:e,bindType:e,handle:function(bz){var bB=this,bA=bz.relatedTarget,by=bz.handleObj,bw=by.selector,bx;if(!bA||(bA!==bB&&!b.contains(bB,bA))){bz.type=by.origType;bx=by.handler.apply(this,arguments);bz.type=e}return bx}}});if(!b.support.submitBubbles){b.event.special.submit={setup:function(){if(b.nodeName(this,"form")){return false
+}b.event.add(this,"click._submit keypress._submit",function(bx){var bw=bx.target,bv=b.nodeName(bw,"input")||b.nodeName(bw,"button")?bw.form:L;if(bv&&!bv._submit_attached){b.event.add(bv,"submit._submit",function(e){if(this.parentNode&&!e.isTrigger){b.event.simulate("submit",this.parentNode,e,true)}});bv._submit_attached=true}})},teardown:function(){if(b.nodeName(this,"form")){return false}b.event.remove(this,"._submit")}}}if(!b.support.changeBubbles){b.event.special.change={setup:function(){if(bd.test(this.nodeName)){if(this.type==="checkbox"||this.type==="radio"){b.event.add(this,"propertychange._change",function(e){if(e.originalEvent.propertyName==="checked"){this._just_changed=true}});b.event.add(this,"click._change",function(e){if(this._just_changed&&!e.isTrigger){this._just_changed=false;b.event.simulate("change",this,e,true)}})}return false}b.event.add(this,"beforeactivate._change",function(bw){var bv=bw.target;if(bd.test(bv.nodeName)&&!bv._change_attached){b.event.add(bv,"change._change",function(e){if(this.parentNode&&!e.isSimulated&&!e.isTrigger){b.event.simulate("change",this.parentNode,e,true)}});bv._change_attached=true}})},handle:function(bv){var e=bv.target;if(this!==e||bv.isSimulated||bv.isTrigger||(e.type!=="radio"&&e.type!=="checkbox")){return bv.handleObj.handler.apply(this,arguments)}},teardown:function(){b.event.remove(this,"._change");return bd.test(this.nodeName)}}}if(!b.support.focusinBubbles){b.each({focus:"focusin",blur:"focusout"},function(bx,e){var bv=0,bw=function(by){b.event.simulate(e,by.target,b.event.fix(by),true)};b.event.special[e]={setup:function(){if(bv++===0){av.addEventListener(bx,bw,true)}},teardown:function(){if(--bv===0){av.removeEventListener(bx,bw,true)}}}})}b.fn.extend({on:function(bw,e,bz,by,bv){var bA,bx;if(typeof bw==="object"){if(typeof e!=="string"){bz=e;e=L}for(bx in bw){this.on(bx,e,bz,bw[bx],bv)}return this}if(bz==null&&by==null){by=e;bz=e=L}else{if(by==null){if(typeof e==="string"){by=bz;bz=L}else{by=bz;bz=e;e=L}}}if(by===false){by=bk}else{if(!by){return this}}if(bv===1){bA=by;by=function(bB){b().off(bB);return bA.apply(this,arguments)};by.guid=bA.guid||(bA.guid=b.guid++)}return this.each(function(){b.event.add(this,bw,by,bz,e)})},one:function(bv,e,bx,bw){return this.on.call(this,bv,e,bx,bw,1)},off:function(bw,e,by){if(bw&&bw.preventDefault&&bw.handleObj){var bv=bw.handleObj;b(bw.delegateTarget).off(bv.namespace?bv.type+"."+bv.namespace:bv.type,bv.selector,bv.handler);return this}if(typeof bw==="object"){for(var bx in bw){this.off(bx,e,bw[bx])}return this}if(e===false||typeof e==="function"){by=e;e=L}if(by===false){by=bk}return this.each(function(){b.event.remove(this,bw,by,e)})},bind:function(e,bw,bv){return this.on(e,null,bw,bv)},unbind:function(e,bv){return this.off(e,null,bv)},live:function(e,bw,bv){b(this.context).on(e,this.selector,bw,bv);return this},die:function(e,bv){b(this.context).off(e,this.selector||"**",bv);return this},delegate:function(e,bv,bx,bw){return this.on(bv,e,bx,bw)},undelegate:function(e,bv,bw){return arguments.length==1?this.off(e,"**"):this.off(bv,e,bw)},trigger:function(e,bv){return this.each(function(){b.event.trigger(e,bv,this)})},triggerHandler:function(e,bv){if(this[0]){return b.event.trigger(e,bv,this[0],true)}},toggle:function(bx){var bv=arguments,e=bx.guid||b.guid++,bw=0,by=function(bz){var bA=(b._data(this,"lastToggle"+bx.guid)||0)%bw;b._data(this,"lastToggle"+bx.guid,bA+1);bz.preventDefault();return bv[bA].apply(this,arguments)||false};by.guid=e;while(bw<bv.length){bv[bw++].guid=e}return this.click(by)},hover:function(e,bv){return this.mouseenter(e).mouseleave(bv||e)}});b.each(("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu").split(" "),function(bv,e){b.fn[e]=function(bx,bw){if(bw==null){bw=bx;bx=null}return arguments.length>0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}});
+/*!
+ * Sizzle CSS Selector Engine
+ * Copyright 2011, The Dojo Foundation
+ * Released under the MIT, BSD, and GPL Licenses.
+ * More information: http://sizzlejs.com/
+ */
+(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e<bR.length;e++){if(bR[e]===bR[e-1]){bR.splice(e--,1)}}}}return bR};by.matches=function(e,bR){return by(e,null,null,bR)};by.matchesSelector=function(e,bR){return by(bR,null,null,[e]).length>0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS<bU;bS++){bV=bE.order[bS];if((bT=bE.leftMatch[bV].exec(bX))){bR=bT[1];bT.splice(1,1);if(bR.substr(bR.length-1)!=="\\"){bT[1]=(bT[1]||"").replace(bK,"");bW=bE.find[bV](bT,e,bY);if(bW!=null){bX=bX.replace(bE.match[bV],"");break}}}}if(!bW){bW=typeof e.getElementsByTagName!=="undefined"?e.getElementsByTagName("*"):[]}return{set:bW,expr:bX}};by.filter=function(b1,b0,b4,bU){var bW,e,bZ,b6,b3,bR,bT,bV,b2,bS=b1,b5=[],bY=b0,bX=b0&&b0[0]&&by.isXML(b0[0]);while(b1&&b0.length){for(bZ in bE.filter){if((bW=bE.leftMatch[bZ].exec(b1))!=null&&bW[2]){bR=bE.filter[bZ];bT=bW[1];e=false;bW.splice(1,1);if(bT.substr(bT.length-1)==="\\"){continue}if(bY===b5){b5=[]}if(bE.preFilter[bZ]){bW=bE.preFilter[bZ](bW,bY,b4,b5,bU,bX);if(!bW){e=b6=true}else{if(bW===true){continue}}}if(bW){for(bV=0;(b3=bY[bV])!=null;bV++){if(b3){b6=bR(b3,bW,bV,bY);b2=bU^b6;if(b4&&b6!=null){if(b2){e=true}else{bY[bV]=false}}else{if(b2){b5.push(b3);e=true}}}}}if(b6!==L){if(!b4){bY=b5}b1=b1.replace(bE.match[bZ],"");if(!e){return[]}break}}}if(b1===bS){if(e==null){by.error(b1)}else{break}}bS=b1}return bY};by.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)};var bw=by.getText=function(bU){var bS,bT,e=bU.nodeType,bR="";if(e){if(e===1||e===9){if(typeof bU.textContent==="string"){return bU.textContent}else{if(typeof bU.innerText==="string"){return bU.innerText.replace(bO,"")}else{for(bU=bU.firstChild;bU;bU=bU.nextSibling){bR+=bw(bU)}}}}else{if(e===3||e===4){return bU.nodeValue}}}else{for(bS=0;(bT=bU[bS]);bS++){if(bT.nodeType!==8){bR+=bw(bT)}}}return bR};var bE=by.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(e){return e.getAttribute("href")},type:function(e){return e.getAttribute("type")}},relative:{"+":function(bW,bR){var bT=typeof bR==="string",bV=bT&&!bQ.test(bR),bX=bT&&!bV;if(bV){bR=bR.toLowerCase()}for(var bS=0,e=bW.length,bU;bS<e;bS++){if((bU=bW[bS])){while((bU=bU.previousSibling)&&bU.nodeType!==1){}bW[bS]=bX||bU&&bU.nodeName.toLowerCase()===bR?bU||false:bU===bR}}if(bX){by.filter(bR,bW,true)}},">":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS<e;bS++){bV=bW[bS];if(bV){var bT=bV.parentNode;bW[bS]=bT.nodeName.toLowerCase()===bR?bT:false}}}else{for(;bS<e;bS++){bV=bW[bS];if(bV){bW[bS]=bU?bV.parentNode:bV.parentNode===bR}}if(bU){by.filter(bR,bW,true)}}},"":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("parentNode",bR,bS,bT,bU,bV)},"~":function(bT,bR,bV){var bU,bS=bI++,e=bN;if(typeof bR==="string"&&!bQ.test(bR)){bR=bR.toLowerCase();bU=bR;e=bv}e("previousSibling",bR,bS,bT,bU,bV)}},find:{ID:function(bR,bS,bT){if(typeof bS.getElementById!=="undefined"&&!bT){var e=bS.getElementById(bR[1]);return e&&e.parentNode?[e]:[]}},NAME:function(bS,bV){if(typeof bV.getElementsByName!=="undefined"){var bR=[],bU=bV.getElementsByName(bS[1]);for(var bT=0,e=bU.length;bT<e;bT++){if(bU[bT].getAttribute("name")===bS[1]){bR.push(bU[bT])}}return bR.length===0?null:bR}},TAG:function(e,bR){if(typeof bR.getElementsByTagName!=="undefined"){return bR.getElementsByTagName(e[1])}}},preFilter:{CLASS:function(bT,bR,bS,e,bW,bX){bT=" "+bT[1].replace(bK,"")+" ";if(bX){return bT}for(var bU=0,bV;(bV=bR[bU])!=null;bU++){if(bV){if(bW^(bV.className&&(" "+bV.className+" ").replace(/[\t\n\r]/g," ").indexOf(bT)>=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1
+},lt:function(bS,bR,e){return bR<e[3]-0},gt:function(bS,bR,e){return bR>e[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV<bU;bV++){if(bT[bV]===bS){return false}}return true}else{by.error(e)}}}},CHILD:function(bS,bU){var bT,b0,bW,bZ,e,bV,bY,bX=bU[1],bR=bS;switch(bX){case"only":case"first":while((bR=bR.previousSibling)){if(bR.nodeType===1){return false}}if(bX==="first"){return true}bR=bS;case"last":while((bR=bR.nextSibling)){if(bR.nodeType===1){return false}}return true;case"nth":bT=bU[2];b0=bU[3];if(bT===1&&b0===0){return true}bW=bU[0];bZ=bS.parentNode;if(bZ&&(bZ[bC]!==bW||!bS.nodeIndex)){bV=0;for(bR=bZ.firstChild;bR;bR=bR.nextSibling){if(bR.nodeType===1){bR.nodeIndex=++bV}}bZ[bC]=bW}bY=bS.nodeIndex-b0;if(bT===0){return bY===0}else{return(bY%bT===0&&bY/bT>=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS<e;bS++){bR.push(bU[bS])}}else{for(;bU[bS];bS++){bR.push(bU[bS])}}}return bR}}var bJ,bG;if(av.documentElement.compareDocumentPosition){bJ=function(bR,e){if(bR===e){bB=true;return 0}if(!bR.compareDocumentPosition||!e.compareDocumentPosition){return bR.compareDocumentPosition?-1:1}return bR.compareDocumentPosition(e)&4?-1:1}}else{bJ=function(bY,bX){if(bY===bX){bB=true;return 0}else{if(bY.sourceIndex&&bX.sourceIndex){return bY.sourceIndex-bX.sourceIndex}}var bV,bR,bS=[],e=[],bU=bY.parentNode,bW=bX.parentNode,bZ=bU;if(bU===bW){return bG(bY,bX)}else{if(!bU){return -1}else{if(!bW){return 1}}}while(bZ){bS.unshift(bZ);bZ=bZ.parentNode}bZ=bW;while(bZ){e.unshift(bZ);bZ=bZ.parentNode}bV=bS.length;bR=e.length;for(var bT=0;bT<bV&&bT<bR;bT++){if(bS[bT]!==e[bT]){return bG(bS[bT],e[bT])}}return bT===bV?bG(bY,e[bT],-1):bG(bS[bT],bX,1)};bG=function(bR,e,bS){if(bR===e){return bS}var bT=bR.nextSibling;while(bT){if(bT===e){return -1}bT=bT.nextSibling}return 1}}(function(){var bR=av.createElement("div"),bS="script"+(new Date()).getTime(),e=av.documentElement;bR.innerHTML="<a name='"+bS+"'/>";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="<a href='#'></a>";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="<p class='TEST'></p>";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="<div class='test e'></div><div class='test'></div>";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1&&!bY){e[bC]=bV;e.sizset=bT}if(e.nodeName.toLowerCase()===bW){bU=e;break}e=e[bR]}bZ[bT]=bU}}}function bN(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT<bS;bT++){var e=bZ[bT];if(e){var bU=false;e=e[bR];while(e){if(e[bC]===bV){bU=bZ[e.sizset];break}if(e.nodeType===1){if(!bY){e[bC]=bV;e.sizset=bT}if(typeof bW!=="string"){if(e===bW){bU=true;break}}else{if(by.filter(bW,[e]).length>0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT<bR;bT++){by(bS,bY[bT],bX,bW)}return by.filter(bU,bX)};by.attr=b.attr;by.selectors.attrMap={};b.find=by;b.expr=by.selectors;b.expr[":"]=b.expr.filters;b.unique=by.uniqueSort;b.text=by.getText;b.isXMLDoc=by.isXML;b.contains=by.contains})();var ab=/Until$/,aq=/^(?:parents|prevUntil|prevAll)/,a9=/,/,bp=/^.[^:#\[\.,]*$/,P=Array.prototype.slice,H=b.expr.match.POS,ay={children:true,contents:true,next:true,prev:true};b.fn.extend({find:function(e){var bw=this,by,bv;if(typeof e!=="string"){return b(e).filter(function(){for(by=0,bv=bw.length;by<bv;by++){if(b.contains(bw[by],this)){return true}}})}var bx=this.pushStack("","find",e),bA,bB,bz;for(by=0,bv=this.length;by<bv;by++){bA=bx.length;b.find(e,this[by],bx);if(by>0){for(bB=bA;bB<bx.length;bB++){for(bz=0;bz<bA;bz++){if(bx[bz]===bx[bB]){bx.splice(bB--,1);break}}}}}return bx},has:function(bv){var e=b(bv);return this.filter(function(){for(var bx=0,bw=e.length;bx<bw;bx++){if(b.contains(this,e[bx])){return true}}})},not:function(e){return this.pushStack(aG(this,e,false),"not",e)},filter:function(e){return this.pushStack(aG(this,e,true),"filter",e)},is:function(e){return !!e&&(typeof e==="string"?H.test(e)?b(e,this.context).index(this[0])>=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw<by.length;bw++){if(b(bz).is(by[bw])){bv.push({selector:by[bw],elem:bz,level:bB})}}bz=bz.parentNode;bB++}return bv}var bA=H.test(by)||typeof by!=="string"?b(by,bx||this.context):0;for(bw=0,e=this.length;bw<e;bw++){bz=this[bw];while(bz){if(bA?bA.index(bz)>-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/<tbody/i,W=/<|&#?\w+;/,ae=/<(?:script|style)/i,O=/<(?:script|object|embed|option|style)/i,ah=new RegExp("<(?:"+aR+")","i"),o=/checked\s*(?:[^=]|=\s*.checked.)/i,bm=/\/(java|ecma)script/i,aN=/^\s*<!(?:\[CDATA\[|\-\-)/,ax={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},ac=a(av);
+ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div<div>","</div>"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1></$2>");try{for(var bw=0,bv=this.length;bw<bv;bw++){if(this[bw].nodeType===1){b.cleanData(this[bw].getElementsByTagName("*"));this[bw].innerHTML=bx}}}catch(by){this.empty().append(bx)}}else{if(b.isFunction(bx)){this.each(function(bz){var e=b(this);e.html(bx.call(this,bz,e.html()))})}else{this.empty().append(bx)}}}return this},replaceWith:function(e){if(this[0]&&this[0].parentNode){if(b.isFunction(e)){return this.each(function(bx){var bw=b(this),bv=bw.html();bw.replaceWith(e.call(this,bx,bv))})}if(typeof e!=="string"){e=b(e).detach()}return this.each(function(){var bw=this.nextSibling,bv=this.parentNode;b(this).remove();if(bw){b(bw).before(e)}else{b(bv).append(e)}})}else{return this.length?this.pushStack(b(b.isFunction(e)?e():e),"replaceWith",e):this}},detach:function(e){return this.remove(e,true)},domManip:function(bB,bF,bE){var bx,by,bA,bD,bC=bB[0],bv=[];if(!b.support.checkClone&&arguments.length===3&&typeof bC==="string"&&o.test(bC)){return this.each(function(){b(this).domManip(bB,bF,bE,true)})}if(b.isFunction(bC)){return this.each(function(bH){var bG=b(this);bB[0]=bC.call(this,bH,bF?bG.html():L);bG.domManip(bB,bF,bE)})}if(this[0]){bD=bC&&bC.parentNode;if(b.support.parentNode&&bD&&bD.nodeType===11&&bD.childNodes.length===this.length){bx={fragment:bD}}else{bx=b.buildFragment(bB,this,bv)}bA=bx.fragment;if(bA.childNodes.length===1){by=bA=bA.firstChild}else{by=bA.firstChild}if(by){bF=bF&&b.nodeName(by,"tr");for(var bw=0,e=this.length,bz=e-1;bw<e;bw++){bE.call(bF?ba(this[bw],by):this[bw],bx.cacheable||(e>1&&bw<bz)?b.clone(bA,true,true):bA)}}if(bv.length){b.each(bv,bo)}}return this}});function ba(e,bv){return b.nodeName(e,"table")?(e.getElementsByTagName("tbody")[0]||e.appendChild(e.ownerDocument.createElement("tbody"))):e}function t(bB,bv){if(bv.nodeType!==1||!b.hasData(bB)){return}var by,bx,e,bA=b._data(bB),bz=b._data(bv,bA),bw=bA.events;if(bw){delete bz.handle;bz.events={};for(by in bw){for(bx=0,e=bw[by].length;bx<e;bx++){b.event.add(bv,by+(bw[by][bx].namespace?".":"")+bw[by][bx].namespace,bw[by][bx],bw[by][bx].data)}}}if(bz.data){bz.data=b.extend({},bz.data)}}function ai(bv,e){var bw;if(e.nodeType!==1){return}if(e.clearAttributes){e.clearAttributes()}if(e.mergeAttributes){e.mergeAttributes(bv)}bw=e.nodeName.toLowerCase();if(bw==="object"){e.outerHTML=bv.outerHTML}else{if(bw==="input"&&(bv.type==="checkbox"||bv.type==="radio")){if(bv.checked){e.defaultChecked=e.checked=bv.checked}if(e.value!==bv.value){e.value=bv.value}}else{if(bw==="option"){e.selected=bv.defaultSelected}else{if(bw==="input"||bw==="textarea"){e.defaultValue=bv.defaultValue}}}}e.removeAttribute(b.expando)}b.buildFragment=function(bz,bx,bv){var by,e,bw,bA,bB=bz[0];if(bx&&bx[0]){bA=bx[0].ownerDocument||bx[0]}if(!bA.createDocumentFragment){bA=av}if(bz.length===1&&typeof bB==="string"&&bB.length<512&&bA===av&&bB.charAt(0)==="<"&&!O.test(bB)&&(b.support.checkClone||!o.test(bB))&&(b.support.html5Clone||!ah.test(bB))){e=true;bw=b.fragments[bB];if(bw&&bw!==1){by=bw}}if(!by){by=bA.createDocumentFragment();b.clean(bz,bA,by,bv)}if(e){b.fragments[bB]=bw?by:1}return{fragment:by,cacheable:e}};b.fragments={};b.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(e,bv){b.fn[e]=function(bw){var bz=[],bC=b(bw),bB=this.length===1&&this[0].parentNode;if(bB&&bB.nodeType===11&&bB.childNodes.length===1&&bC.length===1){bC[bv](this[0]);return this}else{for(var bA=0,bx=bC.length;bA<bx;bA++){var by=(bA>0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1></$2>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]==="<table>"&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB<bG;bB++){E(bz[bB])}}else{E(bz)}}if(bz.nodeType){bI.push(bz)}else{bI=b.merge(bI,bz)}}if(bH){bF=function(bL){return !bL.type||bm.test(bL.type)};for(bE=0;bI[bE];bE++){if(bA&&b.nodeName(bI[bE],"script")&&(!bI[bE].type||bI[bE].type.toLowerCase()==="text/javascript")){bA.push(bI[bE].parentNode?bI[bE].parentNode.removeChild(bI[bE]):bI[bE])}else{if(bI[bE].nodeType===1){var bJ=b.grep(bI[bE].getElementsByTagName("script"),bF);bI.splice.apply(bI,[bE+1,0].concat(bJ))}bH.appendChild(bI[bE])}}}return bI},cleanData:function(bv){var by,bw,e=b.cache,bB=b.event.special,bA=b.support.deleteExpando;for(var bz=0,bx;(bx=bv[bz])!=null;bz++){if(bx.nodeName&&b.noData[bx.nodeName.toLowerCase()]){continue}bw=bx[b.expando];if(bw){by=e[bw];if(by&&by.events){for(var bC in by.events){if(bB[bC]){b.event.remove(bx,bC)}else{b.removeEvent(bx,bC,by.handle)}}if(by.handle){by.handle.elem=null}}if(bA){delete bx[b.expando]}else{if(bx.removeAttribute){bx.removeAttribute(b.expando)}}delete e[bw]}}}});function bo(e,bv){if(bv.src){b.ajax({url:bv.src,async:false,dataType:"script"})}else{b.globalEval((bv.text||bv.textContent||bv.innerHTML||"").replace(aN,"/*$0*/"))}if(bv.parentNode){bv.parentNode.removeChild(bv)}}var ak=/alpha\([^)]*\)/i,au=/opacity=([^)]*)/,z=/([A-Z]|^ms)/g,bc=/^-?\d+(?:px)?$/i,bn=/^-?\d/,I=/^([\-+])=([\-+.\de]+)/,a7={position:"absolute",visibility:"hidden",display:"block"},an=["Left","Right"],a1=["Top","Bottom"],Z,aI,aX;b.fn.css=function(e,bv){if(arguments.length===2&&bv===L){return this}return b.access(this,e,bv,true,function(bx,bw,by){return by!==L?b.style(bx,bw,by):b.css(bx,bw)})};b.extend({cssHooks:{opacity:{get:function(bw,bv){if(bv){var e=Z(bw,"opacity","opacity");return e===""?"1":e}else{return bw.style.opacity}}}},cssNumber:{fillOpacity:true,fontWeight:true,lineHeight:true,opacity:true,orphans:true,widows:true,zIndex:true,zoom:true},cssProps:{"float":b.support.cssFloat?"cssFloat":"styleFloat"},style:function(bx,bw,bD,by){if(!bx||bx.nodeType===3||bx.nodeType===8||!bx.style){return}var bB,bC,bz=b.camelCase(bw),bv=bx.style,bE=b.cssHooks[bz];bw=b.cssProps[bz]||bz;if(bD!==L){bC=typeof bD;if(bC==="string"&&(bB=I.exec(bD))){bD=(+(bB[1]+1)*+bB[2])+parseFloat(b.css(bx,bw));bC="number"}if(bD==null||bC==="number"&&isNaN(bD)){return}if(bC==="number"&&!b.cssNumber[bz]){bD+="px"}if(!bE||!("set" in bE)||(bD=bE.set(bx,bD))!==L){try{bv[bw]=bD}catch(bA){}}}else{if(bE&&"get" in bE&&(bB=bE.get(bx,false,by))!==L){return bB}return bv[bw]}},css:function(by,bx,bv){var bw,e;bx=b.camelCase(bx);e=b.cssHooks[bx];bx=b.cssProps[bx]||bx;if(bx==="cssFloat"){bx="float"}if(e&&"get" in e&&(bw=e.get(by,true,bv))!==L){return bw}else{if(Z){return Z(by,bx)}}},swap:function(bx,bw,by){var e={};for(var bv in bw){e[bv]=bx.style[bv];bx.style[bv]=bw[bv]}by.call(bx);for(bv in bw){bx.style[bv]=e[bv]}}});b.curCSS=b.css;b.each(["height","width"],function(bv,e){b.cssHooks[e]={get:function(by,bx,bw){var bz;if(bx){if(by.offsetWidth!==0){return p(by,e,bw)}else{b.swap(by,a7,function(){bz=p(by,e,bw)})}return bz}},set:function(bw,bx){if(bc.test(bx)){bx=parseFloat(bx);if(bx>=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;
+if(bA>0){if(bv!=="border"){for(;bx<e;bx++){if(!bv){bA-=parseFloat(b.css(by,"padding"+bz[bx]))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}else{bA-=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}}}return bA+"px"}bA=Z(by,bw,bw);if(bA<0||bA==null){bA=by.style[bw]||0}bA=parseFloat(bA)||0;if(bv){for(;bx<e;bx++){bA+=parseFloat(b.css(by,"padding"+bz[bx]))||0;if(bv!=="padding"){bA+=parseFloat(b.css(by,"border"+bz[bx]+"Width"))||0}if(bv==="margin"){bA+=parseFloat(b.css(by,bv+bz[bx]))||0}}}return bA+"px"}if(b.expr&&b.expr.filters){b.expr.filters.hidden=function(bw){var bv=bw.offsetWidth,e=bw.offsetHeight;return(bv===0&&e===0)||(!b.support.reliableHiddenOffsets&&((bw.style&&bw.style.display)||b.css(bw,"display"))==="none")};b.expr.filters.visible=function(e){return !b.expr.filters.hidden(e)}}var k=/%20/g,ap=/\[\]$/,bs=/\r?\n/g,bq=/#.*$/,aD=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,aZ=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,aM=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,aQ=/^(?:GET|HEAD)$/,c=/^\/\//,M=/\?/,a6=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw<bz;bw++){bv=bx[bw];bC=/^\+/.test(bv);if(bC){bv=bv.substr(1)||"*"}bB=e[bv]=e[bv]||[];bB[bC?"unshift":"push"](bA)}}}}function aW(bv,bE,bz,bD,bB,bx){bB=bB||bE.dataTypes[0];bx=bx||{};bx[bB]=true;var bA=bv[bB],bw=0,e=bA?bA.length:0,by=(bv===aa),bC;for(;bw<e&&(by||!bC);bw++){bC=bA[bw](bE,bz,bD);if(typeof bC==="string"){if(!by||bx[bC]){bC=L}else{bE.dataTypes.unshift(bC);bC=aW(bv,bE,bz,bD,bC,bx)}}}if((by||!bC)&&!bx["*"]){bC=aW(bv,bE,bz,bD,"*",bx)}return bC}function am(bw,bx){var bv,e,by=b.ajaxSettings.flatOptions||{};for(bv in bx){if(bx[bv]!==L){(by[bv]?bw:(e||(e={})))[bv]=bx[bv]}}if(e){b.extend(true,bw,e)}}b.fn.extend({load:function(bw,bz,bA){if(typeof bw!=="string"&&A){return A.apply(this,arguments)}else{if(!this.length){return this}}var by=bw.indexOf(" ");if(by>=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("<div>").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA<bw;bA++){if(bA===1){for(bE in bH.converters){if(typeof bE==="string"){bG[bE.toLowerCase()]=bH.converters[bE]}}}bx=bC;bC=bD[bA];if(bC==="*"){bC=bx}else{if(bx!=="*"&&bx!==bC){by=bx+" "+bC;bF=bG[by]||bG["* "+bC];if(!bF){e=L;for(bv in bG){bB=bv.split(" ");if(bB[0]===bx||bB[0]==="*"){e=bG[bB[1]+" "+bC];if(e){bv=bG[bv];if(bv===true){bF=e}else{if(e===true){bF=bv}}break}}}}if(!(bF||e)){b.error("No conversion from "+by.replace(" "," to "))}if(bF!==true){bz=bF?bF(bz):e(bv(bz))}}}}return bz}var aC=b.now(),u=/(\=)\?(&|$)|\?\?/i;b.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return b.expando+"_"+(aC++)}});b.ajaxPrefilter("json jsonp",function(bD,bA,bC){var bx=bD.contentType==="application/x-www-form-urlencoded"&&(typeof bD.data==="string");if(bD.dataTypes[0]==="jsonp"||bD.jsonp!==false&&(u.test(bD.url)||bx&&u.test(bD.data))){var bB,bw=bD.jsonpCallback=b.isFunction(bD.jsonpCallback)?bD.jsonpCallback():bD.jsonpCallback,bz=bb[bw],e=bD.url,by=bD.data,bv="$1"+bw+"$2";if(bD.jsonp!==false){e=e.replace(u,bv);if(bD.url===e){if(bx){by=by.replace(u,bv)}if(bD.data===by){e+=(/\?/.test(e)?"&":"?")+bD.jsonp+"="+bw}}}bD.url=e;bD.data=by;bb[bw]=function(bE){bB=[bE]};bC.always(function(){bb[bw]=bz;if(bB&&b.isFunction(bz)){bb[bw](bB[0])}});bD.converters["script json"]=function(){if(!bB){b.error(bw+" was not called")}return bB[0]};bD.dataTypes[0]="json";return"script"}});b.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(e){b.globalEval(e);return e}}});b.ajaxPrefilter("script",function(e){if(e.cache===L){e.cache=false}if(e.crossDomain){e.type="GET";e.global=false}});b.ajaxTransport("script",function(bw){if(bw.crossDomain){var e,bv=av.head||av.getElementsByTagName("head")[0]||av.documentElement;return{send:function(bx,by){e=av.createElement("script");e.async="async";if(bw.scriptCharset){e.charset=bw.scriptCharset}e.src=bw.url;e.onload=e.onreadystatechange=function(bA,bz){if(bz||!e.readyState||/loaded|complete/.test(e.readyState)){e.onload=e.onreadystatechange=null;if(bv&&e.parentNode){bv.removeChild(e)}e=L;if(!bz){by(200,"success")}}};bv.insertBefore(e,bv.firstChild)},abort:function(){if(e){e.onload(0,1)}}}}});var B=bb.ActiveXObject?function(){for(var e in N){N[e](0,1)}}:false,y=0,N;function aL(){try{return new bb.XMLHttpRequest()}catch(bv){}}function aj(){try{return new bb.ActiveXObject("Microsoft.XMLHTTP")}catch(bv){}}b.ajaxSettings.xhr=bb.ActiveXObject?function(){return !this.isLocal&&aL()||aj()}:aL;(function(e){b.extend(b.support,{ajax:!!e,cors:!!e&&("withCredentials" in e)})})(b.ajaxSettings.xhr());if(b.support.ajax){b.ajaxTransport(function(e){if(!e.crossDomain||b.support.cors){var bv;return{send:function(bB,bw){var bA=e.xhr(),bz,by;if(e.username){bA.open(e.type,e.url,e.async,e.username,e.password)}else{bA.open(e.type,e.url,e.async)}if(e.xhrFields){for(by in e.xhrFields){bA[by]=e.xhrFields[by]}}if(e.mimeType&&bA.overrideMimeType){bA.overrideMimeType(e.mimeType)}if(!e.crossDomain&&!bB["X-Requested-With"]){bB["X-Requested-With"]="XMLHttpRequest"}try{for(by in bB){bA.setRequestHeader(by,bB[by])}}catch(bx){}bA.send((e.hasContent&&e.data)||null);bv=function(bK,bE){var bF,bD,bC,bI,bH;try{if(bv&&(bE||bA.readyState===4)){bv=L;if(bz){bA.onreadystatechange=b.noop;if(B){delete N[bz]}}if(bE){if(bA.readyState!==4){bA.abort()}}else{bF=bA.status;bC=bA.getAllResponseHeaders();bI={};bH=bA.responseXML;if(bH&&bH.documentElement){bI.xml=bH}bI.text=bA.responseText;try{bD=bA.statusText}catch(bJ){bD=""}if(!bF&&e.isLocal&&!e.crossDomain){bF=bI.text?200:404}else{if(bF===1223){bF=204}}}}}catch(bG){if(!bE){bw(-1,bG)}}if(bI){bw(bF,bD,bI,bC)}};if(!e.async||bA.readyState===4){bv()}else{bz=++y;if(B){if(!N){N={};b(bb).unload(B)}N[bz]=bv}bA.onreadystatechange=bv}},abort:function(){if(bv){bv(0,1)
+}}}}})}var Q={},a8,m,aB=/^(?:toggle|show|hide)$/,aT=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,a3,aH=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],a4;b.fn.extend({show:function(bx,bA,bz){var bw,by;if(bx||bx===0){return this.animate(a0("show",3),bx,bA,bz)}else{for(var bv=0,e=this.length;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(!b._data(bw,"olddisplay")&&by==="none"){by=bw.style.display=""}if(by===""&&b.css(bw,"display")==="none"){b._data(bw,"olddisplay",x(bw.nodeName))}}}for(bv=0;bv<e;bv++){bw=this[bv];if(bw.style){by=bw.style.display;if(by===""||by==="none"){bw.style.display=b._data(bw,"olddisplay")||""}}}return this}},hide:function(bx,bA,bz){if(bx||bx===0){return this.animate(a0("hide",3),bx,bA,bz)}else{var bw,by,bv=0,e=this.length;for(;bv<e;bv++){bw=this[bv];if(bw.style){by=b.css(bw,"display");if(by!=="none"&&!b._data(bw,"olddisplay")){b._data(bw,"olddisplay",by)}}}for(bv=0;bv<e;bv++){if(this[bv].style){this[bv].style.display="none"}}return this}},_toggle:b.fn.toggle,toggle:function(bw,bv,bx){var e=typeof bw==="boolean";if(b.isFunction(bw)&&b.isFunction(bv)){this._toggle.apply(this,arguments)}else{if(bw==null||e){this.each(function(){var by=e?bw:b(this).is(":hidden");b(this)[by?"show":"hide"]()})}else{this.animate(a0("toggle",3),bw,bv,bx)}}return this},fadeTo:function(e,bx,bw,bv){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:bx},e,bw,bv)},animate:function(bz,bw,by,bx){var e=b.speed(bw,by,bx);if(b.isEmptyObject(bz)){return this.each(e.complete,[false])}bz=b.extend({},bz);function bv(){if(e.queue===false){b._mark(this)}var bE=b.extend({},e),bK=this.nodeType===1,bI=bK&&b(this).is(":hidden"),bB,bF,bD,bJ,bH,bC,bG,bL,bA;bE.animatedProperties={};for(bD in bz){bB=b.camelCase(bD);if(bD!==bB){bz[bB]=bz[bD];delete bz[bD]}bF=bz[bB];if(b.isArray(bF)){bE.animatedProperties[bB]=bF[1];bF=bz[bB]=bF[0]}else{bE.animatedProperties[bB]=bE.specialEasing&&bE.specialEasing[bB]||bE.easing||"swing"}if(bF==="hide"&&bI||bF==="show"&&!bI){return bE.complete.call(this)}if(bK&&(bB==="height"||bB==="width")){bE.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY];if(b.css(this,"display")==="inline"&&b.css(this,"float")==="none"){if(!b.support.inlineBlockNeedsLayout||x(this.nodeName)==="inline"){this.style.display="inline-block"}else{this.style.zoom=1}}}}if(bE.overflow!=null){this.style.overflow="hidden"}for(bD in bz){bJ=new b.fx(this,bE,bD);bF=bz[bD];if(aB.test(bF)){bA=b._data(this,"toggle"+bD)||(bF==="toggle"?bI?"show":"hide":0);if(bA){b._data(this,"toggle"+bD,bA==="show"?"hide":"show");bJ[bA]()}else{bJ[bF]()}}else{bH=aT.exec(bF);bC=bJ.cur();if(bH){bG=parseFloat(bH[2]);bL=bH[3]||(b.cssNumber[bD]?"":"px");if(bL!=="px"){b.style(this,bD,(bG||1)+bL);bC=((bG||1)/bJ.cur())*bC;b.style(this,bD,bC+bL)}if(bH[1]){bG=((bH[1]==="-="?-1:1)*bG)+bC}bJ.custom(bC,bG,bL)}else{bJ.custom(bC,bF,"")}}}return true}return e.queue===false?this.each(bv):this.queue(e.queue,bv)},stop:function(bw,bv,e){if(typeof bw!=="string"){e=bv;bv=bw;bw=L}if(bv&&bw!==false){this.queue(bw||"fx",[])}return this.each(function(){var bx,by=false,bA=b.timers,bz=b._data(this);if(!e){b._unmark(true,this)}function bB(bE,bF,bD){var bC=bF[bD];b.removeData(bE,bD,true);bC.stop(e)}if(bw==null){for(bx in bz){if(bz[bx]&&bz[bx].stop&&bx.indexOf(".run")===bx.length-4){bB(this,bz,bx)}}}else{if(bz[bx=bw+".run"]&&bz[bx].stop){bB(this,bz,bx)}}for(bx=bA.length;bx--;){if(bA[bx].elem===this&&(bw==null||bA[bx].queue===bw)){if(e){bA[bx](true)}else{bA[bx].saveState()}by=true;bA.splice(bx,1)}}if(!(e&&by)){b.dequeue(this,bw)}})}});function bh(){setTimeout(at,0);return(a4=b.now())}function at(){a4=L}function a0(bv,e){var bw={};b.each(aH.concat.apply([],aH.slice(0,e)),function(){bw[this]=bv});return bw}b.each({slideDown:a0("show",1),slideUp:a0("hide",1),slideToggle:a0("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(e,bv){b.fn[e]=function(bw,by,bx){return this.animate(bv,bw,by,bx)}});b.extend({speed:function(bw,bx,bv){var e=bw&&typeof bw==="object"?b.extend({},bw):{complete:bv||!bv&&bx||b.isFunction(bw)&&bw,duration:bw,easing:bv&&bx||bx&&!b.isFunction(bx)&&bx};e.duration=b.fx.off?0:typeof e.duration==="number"?e.duration:e.duration in b.fx.speeds?b.fx.speeds[e.duration]:b.fx.speeds._default;if(e.queue==null||e.queue===true){e.queue="fx"}e.old=e.complete;e.complete=function(by){if(b.isFunction(e.old)){e.old.call(this)}if(e.queue){b.dequeue(this,e.queue)}else{if(by!==false){b._unmark(this)}}};return e},easing:{linear:function(bw,bx,e,bv){return e+bv*bw},swing:function(bw,bx,e,bv){return((-Math.cos(bw*Math.PI)/2)+0.5)*bv+e}},timers:[],fx:function(bv,e,bw){this.options=e;this.elem=bv;this.prop=bw;e.orig=e.orig||{}}});b.fx.prototype={update:function(){if(this.options.step){this.options.step.call(this.elem,this.now,this)}(b.fx.step[this.prop]||b.fx.step._default)(this)},cur:function(){if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){return this.elem[this.prop]}var e,bv=b.css(this.elem,this.prop);return isNaN(e=parseFloat(bv))?!bv||bv==="auto"?0:bv:e},custom:function(bz,by,bx){var e=this,bw=b.fx;this.startTime=a4||bh();this.end=by;this.now=this.start=bz;this.pos=this.state=0;this.unit=bx||this.unit||(b.cssNumber[this.prop]?"":"px");function bv(bA){return e.step(bA)}bv.queue=this.options.queue;bv.elem=this.elem;bv.saveState=function(){if(e.options.hide&&b._data(e.elem,"fxshow"+e.prop)===L){b._data(e.elem,"fxshow"+e.prop,e.start)}};if(bv()&&b.timers.push(bv)&&!a3){a3=setInterval(bw.tick,bw.interval)}},show:function(){var e=b._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=e||b.style(this.elem,this.prop);this.options.show=true;if(e!==L){this.custom(this.cur(),e)}else{this.custom(this.prop==="width"||this.prop==="height"?1:0,this.cur())}b(this.elem).show()},hide:function(){this.options.orig[this.prop]=b._data(this.elem,"fxshow"+this.prop)||b.style(this.elem,this.prop);this.options.hide=true;this.custom(this.cur(),0)},step:function(by){var bA,bB,bv,bx=a4||bh(),e=true,bz=this.elem,bw=this.options;if(by||bx>=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e<bv.length;e++){bw=bv[e];if(!bw()&&bv[e]===bw){bv.splice(e--,1)}}if(!bv.length){b.fx.stop()}},interval:13,stop:function(){clearInterval(a3);a3=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(e){b.style(e.elem,"opacity",e.now)},_default:function(e){if(e.elem.style&&e.elem.style[e.prop]!=null){e.elem.style[e.prop]=e.now+e.unit}else{e.elem[e.prop]=e.now}}}});b.each(["width","height"],function(e,bv){b.fx.step[bv]=function(bw){b.style(bw.elem,bv,Math.max(0,bw.now)+bw.unit)}});if(b.expr&&b.expr.filters){b.expr.filters.animated=function(e){return b.grep(b.timers,function(bv){return e===bv.elem}).length}}function x(bx){if(!Q[bx]){var e=av.body,bv=b("<"+bx+">").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b
+})}})(window);
diff --git a/doc/ref/c++/html/namespacegrpc.html b/doc/ref/c++/html/namespacegrpc.html
new file mode 100644
index 0000000000..f9508c6a45
--- /dev/null
+++ b/doc/ref/c++/html/namespacegrpc.html
@@ -0,0 +1,992 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#enum-members">Enumerations</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">grpc Namespace Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc_1_1_call_op_generic_recv_message_helper"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html">CallOpGenericRecvMessageHelper</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacegrpc_1_1protobuf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf.html">protobuf</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacegrpc_1_1testing"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1testing.html">testing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_server_context.html">GenericServerContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader_interface.html">ClientAsyncResponseReaderInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_response_writer.html">ServerAsyncResponseWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_context.html">AuthContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_auth_property_iterator.html">AuthPropertyIterator</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html">SerializationTraits&lt; ByteBuffer, void &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html">ClientReader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html">ClientWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html">ClientReaderWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader.html">ClientAsyncReader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html">ClientAsyncWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader.html">ServerReader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_writer.html">ServerWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_credentials.html">Credentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_credentials_options.html">SslCredentialsOptions</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_dynamic_thread_pool.html">DynamicThreadPool</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_fixed_size_thread_pool.html">FixedSizeThreadPool</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_generic_stub.html">GenericStub</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_write_options.html">WriteOptions</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Per-message write options. <a href="classgrpc_1_1_write_options.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_no_op.html">CallNoOp</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Default argument for <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a>. <a href="classgrpc_1_1_call_no_op.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_message.html">CallOpRecvMessage</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message.html">CallOpGenericRecvMessage</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_send_close.html">CallOpClientSendClose</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_server_send_status.html">CallOpServerSendStatus</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the lower layers, and as it is-a <a class="el" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a>, also massages the final completion into the correct form for consumption in the C++ API. <a href="classgrpc_1_1_call_op_set_interface.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_set.html">CallOpSet</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Primary implementaiton of <a class="el" href="classgrpc_1_1_call_op_set_interface.html" title="An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...">CallOpSetInterface</a>. <a href="classgrpc_1_1_call_op_set.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_sneaky_call_op_set.html">SneakyCallOpSet</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A <a class="el" href="classgrpc_1_1_call_op_set.html" title="Primary implementaiton of CallOpSetInterface. ">CallOpSet</a> that does not post completions to the completion queue. <a href="classgrpc_1_1_sneaky_call_op_set.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_hook.html">CallHook</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call.html">Call</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_grpc_library.html">GrpcLibrary</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_internal_stub.html">InternalStub</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html">SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service.html">RpcService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines how to serialize and deserialize some type. <a href="classgrpc_1_1_serialization_traits.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html">lock_guard</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1mutex.html">mutex</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1unique__lock.html">unique_lock</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1condition__variable.html">condition_variable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1thread.html">thread</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html">Server</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html">ServerBuilder</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html">ServerAsyncReader</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_writer.html">ServerAsyncWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html">SslServerCredentialsOptions</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html">Slice</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html">Status</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html">ClientStreamingInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html">ReaderInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html">WriterInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_interface.html">ClientReaderInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer_interface.html">ClientWriterInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html">ClientReaderWriterInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html">AsyncReaderInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html">AsyncWriterInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_interface.html">ClientAsyncReaderInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer_interface.html">ClientAsyncWriterInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html">ClientAsyncReaderWriterInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point.html">TimePoint</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html">TimePoint&lt; gpr_timespec &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html">TimePoint&lt; std::chrono::system_clock::time_point &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a7b3db9e9e4d0c7faf701c9ebd455196a"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+<a class="el" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter</a><br class="typebreak"/>
+&lt; <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">GenericServerAsyncReaderWriter</a></td></tr>
+<tr class="separator:a7b3db9e9e4d0c7faf701c9ebd455196a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8e3a499d0002aae3afd1cae08f44a9ee"><td class="memItemLeft" align="right" valign="top">typedef std::pair<br class="typebreak"/>
+&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">AuthProperty</a></td></tr>
+<tr class="separator:a8e3a499d0002aae3afd1cae08f44a9ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab04a87625da3bf85cdaf5e7856b00203"><td class="memItemLeft" align="right" valign="top">typedef std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">string</a></td></tr>
+<tr class="separator:ab04a87625da3bf85cdaf5e7856b00203"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aba53fb6f2502caa167e9528e5c560539"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+<a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a><br class="typebreak"/>
+&lt; <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">GenericClientAsyncReaderWriter</a></td></tr>
+<tr class="separator:aba53fb6f2502caa167e9528e5c560539"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:aff1730578c90160528f6a8d67ef5c43b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a> { <br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">OK</a> = 0,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2">CANCELLED</a> = 1,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256">UNKNOWN</a> = 2,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2">INVALID_ARGUMENT</a> = 3,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628">DEADLINE_EXCEEDED</a> = 4,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5">NOT_FOUND</a> = 5,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b">ALREADY_EXISTS</a> = 6,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449">PERMISSION_DENIED</a> = 7,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e">UNAUTHENTICATED</a> = 16,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f">RESOURCE_EXHAUSTED</a> = 8,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2">FAILED_PRECONDITION</a> = 9,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c">ABORTED</a> = 10,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901">OUT_OF_RANGE</a> = 11,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b">UNIMPLEMENTED</a> = 12,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3">INTERNAL</a> = 13,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3">UNAVAILABLE</a> = 14,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688">DATA_LOSS</a> = 15,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234">DO_NOT_USE</a> = -1
+<br/>
+ }</td></tr>
+<tr class="separator:aff1730578c90160528f6a8d67ef5c43b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ad56350897572898b62a33e384c5e4a59"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ad56350897572898b62a33e384c5e4a59">CreateChannel</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;target, const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;creds, const <a class="el" href="classgrpc_1_1_channel_arguments.html">ChannelArguments</a> &amp;args)</td></tr>
+<tr class="separator:ad56350897572898b62a33e384c5e4a59"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63d3b2c5cb11f48742da0d245b0771d3"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3">GoogleDefaultCredentials</a> ()</td></tr>
+<tr class="separator:a63d3b2c5cb11f48742da0d245b0771d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adeb675883da0c9ad8ae4dd38214c3f16"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16">SslCredentials</a> (const <a class="el" href="structgrpc_1_1_ssl_credentials_options.html">SslCredentialsOptions</a> &amp;options)</td></tr>
+<tr class="separator:adeb675883da0c9ad8ae4dd38214c3f16"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a485ca55548022e260806c32d74095c8c"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a485ca55548022e260806c32d74095c8c">ComputeEngineCredentials</a> ()</td></tr>
+<tr class="separator:a485ca55548022e260806c32d74095c8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af2624b99e948624865a346311a613848"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#af2624b99e948624865a346311a613848">ServiceAccountCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;json_key, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;scope, long token_lifetime_seconds)</td></tr>
+<tr class="separator:af2624b99e948624865a346311a613848"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5802d0b8e29f4937281c57bbe07f3517"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517">ServiceAccountJWTAccessCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;json_key, long token_lifetime_seconds)</td></tr>
+<tr class="separator:a5802d0b8e29f4937281c57bbe07f3517"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af69bf38a7cfbd24e127deb86d50dc41d"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d">RefreshTokenCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;json_refresh_token)</td></tr>
+<tr class="separator:af69bf38a7cfbd24e127deb86d50dc41d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a2a08189bab0ce54afb01754bd92ebd7f"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f">AccessTokenCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;access_token)</td></tr>
+<tr class="separator:a2a08189bab0ce54afb01754bd92ebd7f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a78c4ecc2e69303f203fd67fd272b6c96"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96">IAMCredentials</a> (const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;authorization_token, const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;authority_selector)</td></tr>
+<tr class="separator:a78c4ecc2e69303f203fd67fd272b6c96"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0ffe059f3158d41d0e268fd375a0815c"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c">CompositeCredentials</a> (const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;creds1, const std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt; &amp;creds2)</td></tr>
+<tr class="separator:a0ffe059f3158d41d0e268fd375a0815c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ab7d08c50ff1dd9a368a9ff8191f855c3"><td class="memItemLeft" align="right" valign="top">std::shared_ptr&lt; <a class="el" href="classgrpc_1_1_credentials.html">Credentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3">InsecureCredentials</a> ()</td></tr>
+<tr class="separator:ab7d08c50ff1dd9a368a9ff8191f855c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a00d2939a7b40a674459016f6148f372d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">FillMetadataMap</a> (grpc_metadata_array *arr, std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; *metadata)</td></tr>
+<tr class="separator:a00d2939a7b40a674459016f6148f372d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a16ecfcd344f569a6fcfa2c42e3a43aca"><td class="memItemLeft" align="right" valign="top">grpc_metadata *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">FillMetadataArray</a> (const std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;metadata)</td></tr>
+<tr class="separator:a16ecfcd344f569a6fcfa2c42e3a43aca"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a35d5687ea2da09f9376f2caa42a1db1b"><td class="memTemplParams" colspan="2">template&lt;class InputMessage , class OutputMessage &gt; </td></tr>
+<tr class="memitem:a35d5687ea2da09f9376f2caa42a1db1b"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b">BlockingUnaryCall</a> (<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a> *channel, const <a class="el" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> &amp;method, <a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const InputMessage &amp;request, OutputMessage *result)</td></tr>
+<tr class="separator:a35d5687ea2da09f9376f2caa42a1db1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a453a85937625eaa278403fd7e33cd7bb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb">SerializeProto</a> (const <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> &amp;msg, grpc_byte_buffer **buffer)</td></tr>
+<tr class="separator:a453a85937625eaa278403fd7e33cd7bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9124f8212366355212b2fefb8a6ccc1f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f">DeserializeProto</a> (grpc_byte_buffer *buffer, <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> *msg, int max_message_size)</td></tr>
+<tr class="separator:a9124f8212366355212b2fefb8a6ccc1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:adf4e07954696095e27c0181691a1f752"><td class="memItemLeft" align="right" valign="top">std::shared_ptr<br class="typebreak"/>
+&lt; <a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#adf4e07954696095e27c0181691a1f752">SslServerCredentials</a> (const <a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html">SslServerCredentialsOptions</a> &amp;options)</td></tr>
+<tr class="separator:adf4e07954696095e27c0181691a1f752"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8c26768567516f22852d7ccc09c7940"><td class="memItemLeft" align="right" valign="top">std::shared_ptr<br class="typebreak"/>
+&lt; <a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940">InsecureServerCredentials</a> ()</td></tr>
+<tr class="separator:aa8c26768567516f22852d7ccc09c7940"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ac7e5a6b4adf7c63f444606454138a334"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334">CreateDefaultThreadPool</a> ()</td></tr>
+<tr class="separator:ac7e5a6b4adf7c63f444606454138a334"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a4e160d3739280d51ec130ab1bb1c549c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c">Timepoint2Timespec</a> (const std::chrono::system_clock::time_point &amp;from, gpr_timespec *to)</td></tr>
+<tr class="separator:a4e160d3739280d51ec130ab1bb1c549c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b3b542af97e1ae35f327c7095d98369"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369">TimepointHR2Timespec</a> (const std::chrono::high_resolution_clock::time_point &amp;from, gpr_timespec *to)</td></tr>
+<tr class="separator:a8b3b542af97e1ae35f327c7095d98369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12896f279762d0100669da708d466ec1"><td class="memItemLeft" align="right" valign="top">std::chrono::system_clock::time_point&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">Timespec2Timepoint</a> (gpr_timespec t)</td></tr>
+<tr class="separator:a12896f279762d0100669da708d466ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a8e3a499d0002aae3afd1cae08f44a9ee"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef std::pair&lt;<a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&gt; <a class="el" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">grpc::AuthProperty</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aba53fb6f2502caa167e9528e5c560539"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a>&lt;<a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>&gt; <a class="el" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">grpc::GenericClientAsyncReaderWriter</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a7b3db9e9e4d0c7faf701c9ebd455196a"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef <a class="el" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter</a>&lt;<a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>, <a class="el" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>&gt; <a class="el" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">grpc::GenericServerAsyncReaderWriter</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab04a87625da3bf85cdaf5e7856b00203"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef std::string <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Enumeration Type Documentation</h2>
+<a class="anchor" id="aff1730578c90160528f6a8d67ef5c43b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">enum <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">grpc::StatusCode</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+<table class="fieldtable">
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65"></a>OK</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2"></a>CANCELLED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256"></a>UNKNOWN</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2"></a>INVALID_ARGUMENT</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628"></a>DEADLINE_EXCEEDED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5"></a>NOT_FOUND</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b"></a>ALREADY_EXISTS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449"></a>PERMISSION_DENIED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e"></a>UNAUTHENTICATED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f"></a>RESOURCE_EXHAUSTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2"></a>FAILED_PRECONDITION</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c"></a>ABORTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901"></a>OUT_OF_RANGE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b"></a>UNIMPLEMENTED</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3"></a>INTERNAL</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3"></a>UNAVAILABLE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688"></a>DATA_LOSS</em>&#160;</td><td class="fielddoc">
+</td></tr>
+<tr><td class="fieldname"><em><a class="anchor" id="aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234"></a>DO_NOT_USE</em>&#160;</td><td class="fielddoc">
+</td></tr>
+</table>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="a2a08189bab0ce54afb01754bd92ebd7f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::AccessTokenCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>access_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a35d5687ea2da09f9376f2caa42a1db1b"></a>
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;class InputMessage , class OutputMessage &gt; </div>
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::BlockingUnaryCall </td>
+ <td>(</td>
+ <td class="paramtype">ChannelInterface *&#160;</td>
+ <td class="paramname"><em>channel</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const RpcMethod &amp;&#160;</td>
+ <td class="paramname"><em>method</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">ClientContext *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const InputMessage &amp;&#160;</td>
+ <td class="paramname"><em>request</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">OutputMessage *&#160;</td>
+ <td class="paramname"><em>result</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0ffe059f3158d41d0e268fd375a0815c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::CompositeCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const std::shared_ptr&lt; Credentials &gt; &amp;&#160;</td>
+ <td class="paramname"><em>creds1</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::shared_ptr&lt; Credentials &gt; &amp;&#160;</td>
+ <td class="paramname"><em>creds2</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a485ca55548022e260806c32d74095c8c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::ComputeEngineCredentials </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad56350897572898b62a33e384c5e4a59"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>&gt; grpc::CreateChannel </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>target</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const std::shared_ptr&lt; Credentials &gt; &amp;&#160;</td>
+ <td class="paramname"><em>creds</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const ChannelArguments &amp;&#160;</td>
+ <td class="paramname"><em>args</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ac7e5a6b4adf7c63f444606454138a334"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a>* grpc::CreateDefaultThreadPool </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a9124f8212366355212b2fefb8a6ccc1f"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::DeserializeProto </td>
+ <td>(</td>
+ <td class="paramtype">grpc_byte_buffer *&#160;</td>
+ <td class="paramname"><em>buffer</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> *&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_message_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a16ecfcd344f569a6fcfa2c42e3a43aca"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_metadata* grpc::FillMetadataArray </td>
+ <td>(</td>
+ <td class="paramtype">const std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; &amp;&#160;</td>
+ <td class="paramname"><em>metadata</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a00d2939a7b40a674459016f6148f372d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::FillMetadataMap </td>
+ <td>(</td>
+ <td class="paramtype">grpc_metadata_array *&#160;</td>
+ <td class="paramname"><em>arr</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">std::multimap&lt; <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>, <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &gt; *&#160;</td>
+ <td class="paramname"><em>metadata</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a63d3b2c5cb11f48742da0d245b0771d3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::GoogleDefaultCredentials </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a78c4ecc2e69303f203fd67fd272b6c96"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::IAMCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>authorization_token</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>authority_selector</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ab7d08c50ff1dd9a368a9ff8191f855c3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::InsecureCredentials </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aa8c26768567516f22852d7ccc09c7940"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a>&gt; grpc::InsecureServerCredentials </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af69bf38a7cfbd24e127deb86d50dc41d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::RefreshTokenCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>json_refresh_token</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a453a85937625eaa278403fd7e33cd7bb"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_status.html">Status</a> grpc::SerializeProto </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> &amp;&#160;</td>
+ <td class="paramname"><em>msg</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">grpc_byte_buffer **&#160;</td>
+ <td class="paramname"><em>buffer</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="af2624b99e948624865a346311a613848"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::ServiceAccountCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>scope</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>token_lifetime_seconds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5802d0b8e29f4937281c57bbe07f3517"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::ServiceAccountJWTAccessCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> &amp;&#160;</td>
+ <td class="paramname"><em>json_key</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">long&#160;</td>
+ <td class="paramname"><em>token_lifetime_seconds</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adeb675883da0c9ad8ae4dd38214c3f16"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_credentials.html">Credentials</a>&gt; grpc::SslCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const SslCredentialsOptions &amp;&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="adf4e07954696095e27c0181691a1f752"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::shared_ptr&lt;<a class="el" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a>&gt; grpc::SslServerCredentials </td>
+ <td>(</td>
+ <td class="paramtype">const SslServerCredentialsOptions &amp;&#160;</td>
+ <td class="paramname"><em>options</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a4e160d3739280d51ec130ab1bb1c549c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::Timepoint2Timespec </td>
+ <td>(</td>
+ <td class="paramtype">const std::chrono::system_clock::time_point &amp;&#160;</td>
+ <td class="paramname"><em>from</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpr_timespec *&#160;</td>
+ <td class="paramname"><em>to</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a8b3b542af97e1ae35f327c7095d98369"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">void grpc::TimepointHR2Timespec </td>
+ <td>(</td>
+ <td class="paramtype">const std::chrono::high_resolution_clock::time_point &amp;&#160;</td>
+ <td class="paramname"><em>from</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">gpr_timespec *&#160;</td>
+ <td class="paramname"><em>to</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a12896f279762d0100669da708d466ec1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::chrono::system_clock::time_point grpc::Timespec2Timepoint </td>
+ <td>(</td>
+ <td class="paramtype">gpr_timespec&#160;</td>
+ <td class="paramname"><em>t</em></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacegrpc_1_1_call_op_generic_recv_message_helper.html b/doc/ref/c++/html/namespacegrpc_1_1_call_op_generic_recv_message_helper.html
new file mode 100644
index 0000000000..c2f6e288f6
--- /dev/null
+++ b/doc/ref/c++/html/namespacegrpc_1_1_call_op_generic_recv_message_helper.html
@@ -0,0 +1,110 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::CallOpGenericRecvMessageHelper Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html">CallOpGenericRecvMessageHelper</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::CallOpGenericRecvMessageHelper Namespace Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html">DeserializeFunc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html">DeserializeFuncType</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacegrpc_1_1protobuf.html b/doc/ref/c++/html/namespacegrpc_1_1protobuf.html
new file mode 100644
index 0000000000..28ff53d968
--- /dev/null
+++ b/doc/ref/c++/html/namespacegrpc_1_1protobuf.html
@@ -0,0 +1,141 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::protobuf Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1protobuf.html">protobuf</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::protobuf Namespace Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc_1_1protobuf_1_1io"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html">io</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:a58557bfd4af54f1c54a6de69ab1fb43c"><td class="memItemLeft" align="right" valign="top">typedef ::google::protobuf::Message&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a></td></tr>
+<tr class="separator:a58557bfd4af54f1c54a6de69ab1fb43c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad614bff24fe4674ca81af74c769a7b32"><td class="memItemLeft" align="right" valign="top">typedef ::google::protobuf::int64&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32">int64</a></td></tr>
+<tr class="separator:ad614bff24fe4674ca81af74c769a7b32"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="ad614bff24fe4674ca81af74c769a7b32"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef ::google::protobuf::int64 <a class="el" href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32">grpc::protobuf::int64</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a58557bfd4af54f1c54a6de69ab1fb43c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef ::google::protobuf::Message <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacegrpc_1_1protobuf_1_1io.html b/doc/ref/c++/html/namespacegrpc_1_1protobuf_1_1io.html
new file mode 100644
index 0000000000..f1e405afea
--- /dev/null
+++ b/doc/ref/c++/html/namespacegrpc_1_1protobuf_1_1io.html
@@ -0,0 +1,152 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::protobuf::io Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1protobuf.html">protobuf</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html">io</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#typedef-members">Typedefs</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::protobuf::io Namespace Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:aafcf83341d287d00418952374bc82ce1"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+::google::protobuf::io::ZeroCopyOutputStream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1">ZeroCopyOutputStream</a></td></tr>
+<tr class="separator:aafcf83341d287d00418952374bc82ce1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae16bb38d6b730de308f0be4eb43931b4"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+::google::protobuf::io::ZeroCopyInputStream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4">ZeroCopyInputStream</a></td></tr>
+<tr class="separator:ae16bb38d6b730de308f0be4eb43931b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8be5a5d13d5471daee11dd8203973bf3"><td class="memItemLeft" align="right" valign="top">typedef <br class="typebreak"/>
+::google::protobuf::io::CodedInputStream&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3">CodedInputStream</a></td></tr>
+<tr class="separator:a8be5a5d13d5471daee11dd8203973bf3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="a8be5a5d13d5471daee11dd8203973bf3"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef ::google::protobuf::io::CodedInputStream <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3">grpc::protobuf::io::CodedInputStream</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae16bb38d6b730de308f0be4eb43931b4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef ::google::protobuf::io::ZeroCopyInputStream <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4">grpc::protobuf::io::ZeroCopyInputStream</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="aafcf83341d287d00418952374bc82ce1"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">typedef ::google::protobuf::io::ZeroCopyOutputStream <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1">grpc::protobuf::io::ZeroCopyOutputStream</a></td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacegrpc_1_1testing.html b/doc/ref/c++/html/namespacegrpc_1_1testing.html
new file mode 100644
index 0000000000..a4b505642b
--- /dev/null
+++ b/doc/ref/c++/html/namespacegrpc_1_1testing.html
@@ -0,0 +1,100 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::testing Namespace Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="namespacegrpc_1_1testing.html">testing</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">grpc::testing Namespace Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacemembers.html b/doc/ref/c++/html/namespacemembers.html
new file mode 100644
index 0000000000..05b81c3918
--- /dev/null
+++ b/doc/ref/c++/html/namespacemembers.html
@@ -0,0 +1,335 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li class="current"><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="namespacemembers.html"><span>All</span></a></li>
+ <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow4" class="tabs3">
+ <ul class="tablist">
+ <li><a href="#index_a"><span>a</span></a></li>
+ <li><a href="#index_b"><span>b</span></a></li>
+ <li><a href="#index_c"><span>c</span></a></li>
+ <li><a href="#index_d"><span>d</span></a></li>
+ <li><a href="#index_f"><span>f</span></a></li>
+ <li><a href="#index_g"><span>g</span></a></li>
+ <li><a href="#index_i"><span>i</span></a></li>
+ <li><a href="#index_m"><span>m</span></a></li>
+ <li><a href="#index_n"><span>n</span></a></li>
+ <li><a href="#index_o"><span>o</span></a></li>
+ <li><a href="#index_p"><span>p</span></a></li>
+ <li><a href="#index_r"><span>r</span></a></li>
+ <li><a href="#index_s"><span>s</span></a></li>
+ <li><a href="#index_t"><span>t</span></a></li>
+ <li><a href="#index_u"><span>u</span></a></li>
+ <li class="current"><a href="#index_z"><span>z</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+<div class="textblock">Here is a list of all namespace members with links to the namespace documentation for each member:</div>
+
+<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
+<li>ABORTED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c">grpc</a>
+</li>
+<li>AccessTokenCredentials()
+: <a class="el" href="namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f">grpc</a>
+</li>
+<li>ALREADY_EXISTS
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b">grpc</a>
+</li>
+<li>AuthProperty
+: <a class="el" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
+<li>BlockingUnaryCall()
+: <a class="el" href="namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
+<li>CANCELLED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2">grpc</a>
+</li>
+<li>CodedInputStream
+: <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3">grpc::protobuf::io</a>
+</li>
+<li>CompositeCredentials()
+: <a class="el" href="namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c">grpc</a>
+</li>
+<li>ComputeEngineCredentials()
+: <a class="el" href="namespacegrpc.html#a485ca55548022e260806c32d74095c8c">grpc</a>
+</li>
+<li>CreateChannel()
+: <a class="el" href="namespacegrpc.html#ad56350897572898b62a33e384c5e4a59">grpc</a>
+</li>
+<li>CreateDefaultThreadPool()
+: <a class="el" href="namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
+<li>DATA_LOSS
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688">grpc</a>
+</li>
+<li>DEADLINE_EXCEEDED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628">grpc</a>
+</li>
+<li>DeserializeProto()
+: <a class="el" href="namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f">grpc</a>
+</li>
+<li>DO_NOT_USE
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
+<li>FAILED_PRECONDITION
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2">grpc</a>
+</li>
+<li>FillMetadataArray()
+: <a class="el" href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">grpc</a>
+</li>
+<li>FillMetadataMap()
+: <a class="el" href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
+<li>GenericClientAsyncReaderWriter
+: <a class="el" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">grpc</a>
+</li>
+<li>GenericServerAsyncReaderWriter
+: <a class="el" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">grpc</a>
+</li>
+<li>GoogleDefaultCredentials()
+: <a class="el" href="namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
+<li>IAMCredentials()
+: <a class="el" href="namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96">grpc</a>
+</li>
+<li>InsecureCredentials()
+: <a class="el" href="namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3">grpc</a>
+</li>
+<li>InsecureServerCredentials()
+: <a class="el" href="namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940">grpc</a>
+</li>
+<li>int64
+: <a class="el" href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32">grpc::protobuf</a>
+</li>
+<li>INTERNAL
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3">grpc</a>
+</li>
+<li>INVALID_ARGUMENT
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
+<li>Message
+: <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
+<li>NOT_FOUND
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_o"></a>- o -</h3><ul>
+<li>OK
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">grpc</a>
+</li>
+<li>OUT_OF_RANGE
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
+<li>PERMISSION_DENIED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
+<li>RefreshTokenCredentials()
+: <a class="el" href="namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d">grpc</a>
+</li>
+<li>RESOURCE_EXHAUSTED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
+<li>SerializeProto()
+: <a class="el" href="namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb">grpc</a>
+</li>
+<li>ServiceAccountCredentials()
+: <a class="el" href="namespacegrpc.html#af2624b99e948624865a346311a613848">grpc</a>
+</li>
+<li>ServiceAccountJWTAccessCredentials()
+: <a class="el" href="namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517">grpc</a>
+</li>
+<li>SslCredentials()
+: <a class="el" href="namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16">grpc</a>
+</li>
+<li>SslServerCredentials()
+: <a class="el" href="namespacegrpc.html#adf4e07954696095e27c0181691a1f752">grpc</a>
+</li>
+<li>StatusCode
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">grpc</a>
+</li>
+<li>string
+: <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
+<li>Timepoint2Timespec()
+: <a class="el" href="namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c">grpc</a>
+</li>
+<li>TimepointHR2Timespec()
+: <a class="el" href="namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369">grpc</a>
+</li>
+<li>Timespec2Timepoint()
+: <a class="el" href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_u"></a>- u -</h3><ul>
+<li>UNAUTHENTICATED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e">grpc</a>
+</li>
+<li>UNAVAILABLE
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3">grpc</a>
+</li>
+<li>UNIMPLEMENTED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b">grpc</a>
+</li>
+<li>UNKNOWN
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256">grpc</a>
+</li>
+</ul>
+
+
+<h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
+<li>ZeroCopyInputStream
+: <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4">grpc::protobuf::io</a>
+</li>
+<li>ZeroCopyOutputStream
+: <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1">grpc::protobuf::io</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacemembers_enum.html b/doc/ref/c++/html/namespacemembers_enum.html
new file mode 100644
index 0000000000..da88050fb4
--- /dev/null
+++ b/doc/ref/c++/html/namespacemembers_enum.html
@@ -0,0 +1,106 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li class="current"><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespacemembers.html"><span>All</span></a></li>
+ <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li class="current"><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>StatusCode
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">grpc</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacemembers_eval.html b/doc/ref/c++/html/namespacemembers_eval.html
new file mode 100644
index 0000000000..6265ff8982
--- /dev/null
+++ b/doc/ref/c++/html/namespacemembers_eval.html
@@ -0,0 +1,157 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li class="current"><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespacemembers.html"><span>All</span></a></li>
+ <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li class="current"><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>ABORTED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c">grpc</a>
+</li>
+<li>ALREADY_EXISTS
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b">grpc</a>
+</li>
+<li>CANCELLED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2">grpc</a>
+</li>
+<li>DATA_LOSS
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688">grpc</a>
+</li>
+<li>DEADLINE_EXCEEDED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628">grpc</a>
+</li>
+<li>DO_NOT_USE
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234">grpc</a>
+</li>
+<li>FAILED_PRECONDITION
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2">grpc</a>
+</li>
+<li>INTERNAL
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3">grpc</a>
+</li>
+<li>INVALID_ARGUMENT
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2">grpc</a>
+</li>
+<li>NOT_FOUND
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5">grpc</a>
+</li>
+<li>OK
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">grpc</a>
+</li>
+<li>OUT_OF_RANGE
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901">grpc</a>
+</li>
+<li>PERMISSION_DENIED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449">grpc</a>
+</li>
+<li>RESOURCE_EXHAUSTED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f">grpc</a>
+</li>
+<li>UNAUTHENTICATED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e">grpc</a>
+</li>
+<li>UNAVAILABLE
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3">grpc</a>
+</li>
+<li>UNIMPLEMENTED
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b">grpc</a>
+</li>
+<li>UNKNOWN
+: <a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256">grpc</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacemembers_func.html b/doc/ref/c++/html/namespacemembers_func.html
new file mode 100644
index 0000000000..d663d4320c
--- /dev/null
+++ b/doc/ref/c++/html/namespacemembers_func.html
@@ -0,0 +1,169 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li class="current"><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespacemembers.html"><span>All</span></a></li>
+ <li class="current"><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>AccessTokenCredentials()
+: <a class="el" href="namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f">grpc</a>
+</li>
+<li>BlockingUnaryCall()
+: <a class="el" href="namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b">grpc</a>
+</li>
+<li>CompositeCredentials()
+: <a class="el" href="namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c">grpc</a>
+</li>
+<li>ComputeEngineCredentials()
+: <a class="el" href="namespacegrpc.html#a485ca55548022e260806c32d74095c8c">grpc</a>
+</li>
+<li>CreateChannel()
+: <a class="el" href="namespacegrpc.html#ad56350897572898b62a33e384c5e4a59">grpc</a>
+</li>
+<li>CreateDefaultThreadPool()
+: <a class="el" href="namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334">grpc</a>
+</li>
+<li>DeserializeProto()
+: <a class="el" href="namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f">grpc</a>
+</li>
+<li>FillMetadataArray()
+: <a class="el" href="namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca">grpc</a>
+</li>
+<li>FillMetadataMap()
+: <a class="el" href="namespacegrpc.html#a00d2939a7b40a674459016f6148f372d">grpc</a>
+</li>
+<li>GoogleDefaultCredentials()
+: <a class="el" href="namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3">grpc</a>
+</li>
+<li>IAMCredentials()
+: <a class="el" href="namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96">grpc</a>
+</li>
+<li>InsecureCredentials()
+: <a class="el" href="namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3">grpc</a>
+</li>
+<li>InsecureServerCredentials()
+: <a class="el" href="namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940">grpc</a>
+</li>
+<li>RefreshTokenCredentials()
+: <a class="el" href="namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d">grpc</a>
+</li>
+<li>SerializeProto()
+: <a class="el" href="namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb">grpc</a>
+</li>
+<li>ServiceAccountCredentials()
+: <a class="el" href="namespacegrpc.html#af2624b99e948624865a346311a613848">grpc</a>
+</li>
+<li>ServiceAccountJWTAccessCredentials()
+: <a class="el" href="namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517">grpc</a>
+</li>
+<li>SslCredentials()
+: <a class="el" href="namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16">grpc</a>
+</li>
+<li>SslServerCredentials()
+: <a class="el" href="namespacegrpc.html#adf4e07954696095e27c0181691a1f752">grpc</a>
+</li>
+<li>Timepoint2Timespec()
+: <a class="el" href="namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c">grpc</a>
+</li>
+<li>TimepointHR2Timespec()
+: <a class="el" href="namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369">grpc</a>
+</li>
+<li>Timespec2Timepoint()
+: <a class="el" href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">grpc</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespacemembers_type.html b/doc/ref/c++/html/namespacemembers_type.html
new file mode 100644
index 0000000000..866b5ef6bd
--- /dev/null
+++ b/doc/ref/c++/html/namespacemembers_type.html
@@ -0,0 +1,130 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Namespace Members</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li class="current"><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+ <div id="navrow3" class="tabs2">
+ <ul class="tablist">
+ <li><a href="namespacemembers.html"><span>All</span></a></li>
+ <li><a href="namespacemembers_func.html"><span>Functions</span></a></li>
+ <li class="current"><a href="namespacemembers_type.html"><span>Typedefs</span></a></li>
+ <li><a href="namespacemembers_enum.html"><span>Enumerations</span></a></li>
+ <li><a href="namespacemembers_eval.html"><span>Enumerator</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="contents">
+&#160;<ul>
+<li>AuthProperty
+: <a class="el" href="namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee">grpc</a>
+</li>
+<li>CodedInputStream
+: <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3">grpc::protobuf::io</a>
+</li>
+<li>GenericClientAsyncReaderWriter
+: <a class="el" href="namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539">grpc</a>
+</li>
+<li>GenericServerAsyncReaderWriter
+: <a class="el" href="namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a">grpc</a>
+</li>
+<li>int64
+: <a class="el" href="namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32">grpc::protobuf</a>
+</li>
+<li>Message
+: <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf</a>
+</li>
+<li>string
+: <a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc</a>
+</li>
+<li>ZeroCopyInputStream
+: <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4">grpc::protobuf::io</a>
+</li>
+<li>ZeroCopyOutputStream
+: <a class="el" href="namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1">grpc::protobuf::io</a>
+</li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/namespaces.html b/doc/ref/c++/html/namespaces.html
new file mode 100644
index 0000000000..371412a5b0
--- /dev/null
+++ b/doc/ref/c++/html/namespaces.html
@@ -0,0 +1,105 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: Namespace List</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li class="current"><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li class="current"><a href="namespaces.html"><span>Namespace&#160;List</span></a></li>
+ <li><a href="namespacemembers.html"><span>Namespace&#160;Members</span></a></li>
+ </ul>
+ </div>
+</div><!-- top -->
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div class="header">
+ <div class="headertitle">
+<div class="title">Namespace List</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock">Here is a list of all namespaces with brief descriptions:</div><div class="directory">
+<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span>]</div><table class="directory">
+<tr id="row_0_" class="even"><td class="entry"><img id="arr_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('0_')"/><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc.html" target="_self">grpc</a></td><td class="desc"></td></tr>
+<tr id="row_0_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1_call_op_generic_recv_message_helper.html" target="_self">CallOpGenericRecvMessageHelper</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img id="arr_0_1_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('0_1_')"/><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1protobuf.html" target="_self">protobuf</a></td><td class="desc"></td></tr>
+<tr id="row_0_1_0_"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1protobuf_1_1io.html" target="_self">io</a></td><td class="desc"></td></tr>
+<tr id="row_0_2_" class="even"><td class="entry"><img src="ftv2blank.png" alt="&#160;" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2ns.png" alt="N" width="24" height="22" /><a class="el" href="namespacegrpc_1_1testing.html" target="_self">testing</a></td><td class="desc"></td></tr>
+</table>
+</div><!-- directory -->
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/nav_f.png b/doc/ref/c++/html/nav_f.png
new file mode 100644
index 0000000000..72a58a529e
--- /dev/null
+++ b/doc/ref/c++/html/nav_f.png
Binary files differ
diff --git a/doc/ref/c++/html/nav_g.png b/doc/ref/c++/html/nav_g.png
new file mode 100644
index 0000000000..2093a237a9
--- /dev/null
+++ b/doc/ref/c++/html/nav_g.png
Binary files differ
diff --git a/doc/ref/c++/html/nav_h.png b/doc/ref/c++/html/nav_h.png
new file mode 100644
index 0000000000..33389b101d
--- /dev/null
+++ b/doc/ref/c++/html/nav_h.png
Binary files differ
diff --git a/doc/ref/c++/html/open.png b/doc/ref/c++/html/open.png
new file mode 100644
index 0000000000..30f75c7efe
--- /dev/null
+++ b/doc/ref/c++/html/open.png
Binary files differ
diff --git a/doc/ref/c++/html/proto__utils_8h.html b/doc/ref/c++/html/proto__utils_8h.html
new file mode 100644
index 0000000000..1f9bbbe4fd
--- /dev/null
+++ b/doc/ref/c++/html/proto__utils_8h.html
@@ -0,0 +1,129 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/proto_utils.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">proto_utils.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;type_traits&gt;</code><br/>
+<code>#include &lt;grpc/grpc.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="serialization__traits_8h_source.html">grpc++/impl/serialization_traits.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config__protobuf_8h_source.html">grpc++/config_protobuf.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+</div>
+<p><a href="proto__utils_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a453a85937625eaa278403fd7e33cd7bb"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb">grpc::SerializeProto</a> (const <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> &amp;msg, grpc_byte_buffer **buffer)</td></tr>
+<tr class="separator:a453a85937625eaa278403fd7e33cd7bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9124f8212366355212b2fefb8a6ccc1f"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f">grpc::DeserializeProto</a> (grpc_byte_buffer *buffer, <a class="el" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a> *msg, int max_message_size)</td></tr>
+<tr class="separator:a9124f8212366355212b2fefb8a6ccc1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/proto__utils_8h_source.html b/doc/ref/c++/html/proto__utils_8h_source.html
new file mode 100644
index 0000000000..8ae1a53c5b
--- /dev/null
+++ b/doc/ref/c++/html/proto__utils_8h_source.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/proto_utils.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">proto_utils.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="proto__utils_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_INTERNAL_CPP_PROTO_PROTO_UTILS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPC_INTERNAL_CPP_PROTO_PROTO_UTILS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;type_traits&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;grpc/grpc.h&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="serialization__traits_8h.html">grpc++/impl/serialization_traits.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config__protobuf_8h.html">grpc++/config_protobuf.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">// Serialize the msg into a buffer created inside the function. The caller</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">// should destroy the returned buffer when done with it. If serialization fails,</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">// false is returned and buffer is left unchanged.</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;Status <a class="code" href="namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb">SerializeProto</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a>&amp; msg,</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; grpc_byte_buffer** buffer);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">// The caller keeps ownership of buffer and msg.</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;Status <a class="code" href="namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f">DeserializeProto</a>(grpc_byte_buffer* buffer, <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a>* msg,</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keywordtype">int</span> max_message_size);</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html"> 57</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a>&lt;T, typename std::enable_if&lt;std::is_base_of&lt;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; grpc::protobuf::Message, T&gt;::value&gt;::type&gt; {</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c"> 60</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c">Serialize</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a>&amp; msg,</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; grpc_byte_buffer** buffer, <span class="keywordtype">bool</span>* own_buffer) {</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; *own_buffer = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb">SerializeProto</a>(msg, buffer);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; }</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a"> 65</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a">Deserialize</a>(grpc_byte_buffer* buffer,</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a>* msg,</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">auto</span> status = <a class="code" href="namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f">DeserializeProto</a>(buffer, msg, max_message_size);</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; grpc_byte_buffer_destroy(buffer);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keywordflow">return</span> status;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; }</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;};</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor">#endif // GRPC_INTERNAL_CPP_PROTO_PROTO_UTILS_H</span></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901_html_adeebcdc9be666be418d94c021179762c"><div class="ttname"><a href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;::Serialize</a></div><div class="ttdeci">static Status Serialize(const grpc::protobuf::Message &amp;msg, grpc_byte_buffer **buffer, bool *own_buffer)</div><div class="ttdef"><b>Definition:</b> proto_utils.h:60</div></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901_html_a6a6966d3807ba3c7b3ccc79dca93b92a"><div class="ttname"><a href="classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a">grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;::Deserialize</a></div><div class="ttdeci">static Status Deserialize(grpc_byte_buffer *buffer, grpc::protobuf::Message *msg, int max_message_size)</div><div class="ttdef"><b>Definition:</b> proto_utils.h:65</div></div>
+<div class="ttc" id="serialization__traits_8h_html"><div class="ttname"><a href="serialization__traits_8h.html">serialization_traits.h</a></div></div>
+<div class="ttc" id="namespacegrpc_html_a9124f8212366355212b2fefb8a6ccc1f"><div class="ttname"><a href="namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f">grpc::DeserializeProto</a></div><div class="ttdeci">Status DeserializeProto(grpc_byte_buffer *buffer, grpc::protobuf::Message *msg, int max_message_size)</div></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_html"><div class="ttname"><a href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a></div><div class="ttdoc">Defines how to serialize and deserialize some type. </div><div class="ttdef"><b>Definition:</b> serialization_traits.h:64</div></div>
+<div class="ttc" id="namespacegrpc_html_a453a85937625eaa278403fd7e33cd7bb"><div class="ttname"><a href="namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb">grpc::SerializeProto</a></div><div class="ttdeci">Status SerializeProto(const grpc::protobuf::Message &amp;msg, grpc_byte_buffer **buffer)</div></div>
+<div class="ttc" id="config__protobuf_8h_html"><div class="ttname"><a href="config__protobuf_8h.html">config_protobuf.h</a></div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_html_a58557bfd4af54f1c54a6de69ab1fb43c"><div class="ttname"><a href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a></div><div class="ttdeci">::google::protobuf::Message Message</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:60</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/rpc__method_8h.html b/doc/ref/c++/html/rpc__method_8h.html
new file mode 100644
index 0000000000..ccb2015067
--- /dev/null
+++ b/doc/ref/c++/html/rpc__method_8h.html
@@ -0,0 +1,116 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/rpc_method.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">rpc_method.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="rpc__method_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/rpc__method_8h_source.html b/doc/ref/c++/html/rpc__method_8h_source.html
new file mode 100644
index 0000000000..5d726ae410
--- /dev/null
+++ b/doc/ref/c++/html/rpc__method_8h_source.html
@@ -0,0 +1,173 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/rpc_method.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">rpc_method.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rpc__method_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_RPC_METHOD_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_RPC_METHOD_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html"> 39</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688"> 41</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e"> 42</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e">NORMAL_RPC</a> = 0,</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a"> 43</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a">CLIENT_STREAMING</a>, <span class="comment">// request streaming</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775"> 44</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775">SERVER_STREAMING</a>, <span class="comment">// response streaming</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894"> 45</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894">BIDI_STREAMING</a></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; };</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94"> 48</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94">RpcMethod</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a>, <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> type, <span class="keywordtype">void</span>* <a class="code" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">channel_tag</a>)</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; : name_(name), method_type_(type), channel_tag_(channel_tag) {}</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3"> 51</a></span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> name_; }</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6"> 52</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> <a class="code" href="classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6">method_type</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> method_type_; }</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3"> 53</a></span>&#160; <span class="keywordtype">void</span>* <a class="code" href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">channel_tag</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> channel_tag_; }</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> name_;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcType</a> method_type_;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordtype">void</span>* <span class="keyword">const</span> channel_tag_;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;};</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_RPC_METHOD_H</span></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775">grpc::RpcMethod::SERVER_STREAMING</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:44</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_ace95416ed07409e43059a0dfe9e23688"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">grpc::RpcMethod::RpcType</a></div><div class="ttdeci">RpcType</div><div class="ttdef"><b>Definition:</b> rpc_method.h:41</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_ab06ace199b65e09f1d4c9fde93dafc94"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94">grpc::RpcMethod::RpcMethod</a></div><div class="ttdeci">RpcMethod(const char *name, RpcType type, void *channel_tag)</div><div class="ttdef"><b>Definition:</b> rpc_method.h:48</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_a1de5a64a1e57b5938c4733f9152291b6"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6">grpc::RpcMethod::method_type</a></div><div class="ttdeci">RpcType method_type() const </div><div class="ttdef"><b>Definition:</b> rpc_method.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a">grpc::RpcMethod::CLIENT_STREAMING</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:43</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_a59527e676d274583ec6961fb3f4356b3"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3">grpc::RpcMethod::channel_tag</a></div><div class="ttdeci">void * channel_tag() const </div><div class="ttdef"><b>Definition:</b> rpc_method.h:53</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894">grpc::RpcMethod::BIDI_STREAMING</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:45</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e">grpc::RpcMethod::NORMAL_RPC</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_a6fb4872e0af4c79faffe2bb30b2cafe3"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">grpc::RpcMethod::name</a></div><div class="ttdeci">const char * name() const </div><div class="ttdef"><b>Definition:</b> rpc_method.h:51</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/rpc__service__method_8h.html b/doc/ref/c++/html/rpc__service__method_8h.html
new file mode 100644
index 0000000000..d10cf2ac11
--- /dev/null
+++ b/doc/ref/c++/html/rpc__service__method_8h.html
@@ -0,0 +1,138 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/rpc_service_method.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">rpc_service_method.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;functional&gt;</code><br/>
+<code>#include &lt;map&gt;</code><br/>
+<code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;vector&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="rpc__method_8h_source.html">grpc++/impl/rpc_method.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="stream_8h_source.html">grpc++/stream.h</a>&gt;</code><br/>
+</div>
+<p><a href="rpc__service__method_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_method_handler.html">grpc::MethodHandler</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">grpc::MethodHandler::HandlerParameter</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_handler.html">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_streaming_handler.html">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service_method.html">grpc::RpcServiceMethod</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_service.html">grpc::RpcService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/rpc__service__method_8h_source.html b/doc/ref/c++/html/rpc__service__method_8h_source.html
new file mode 100644
index 0000000000..525dcc85cc
--- /dev/null
+++ b/doc/ref/c++/html/rpc__service__method_8h_source.html
@@ -0,0 +1,386 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/rpc_service_method.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">rpc_service_method.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="rpc__service__method_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_RPC_SERVICE_METHOD_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_RPC_SERVICE_METHOD_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;functional&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="rpc__method_8h.html">grpc++/impl/rpc_method.h</a>&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="stream_8h.html">grpc++/stream.h</a>&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">class </span>ServerContext;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">class </span>StreamContextInterface;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment">// TODO(rocking): we might need to split this file into multiple ones.</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">// Base class for running an RPC handler.</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classgrpc_1_1_method_handler.html"> 54</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_method_handler.html">MethodHandler</a> {</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0"> 56</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">~MethodHandler</a>() {}</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html"> 57</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a> {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693"> 58</a></span>&#160; <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693">HandlerParameter</a>(<a class="code" href="classgrpc_1_1_call.html">Call</a>* c, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* context, grpc_byte_buffer* req,</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">int</span> max_size)</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; : <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72">call</a>(c),</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c">server_context</a>(context),</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4">request</a>(req),</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756">max_message_size</a>(max_size) {}</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72"> 64</a></span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a>* <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72">call</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c"> 65</a></span>&#160; <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c">server_context</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// Handler required to grpc_byte_buffer_destroy this</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4"> 67</a></span>&#160; grpc_byte_buffer* <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4">request</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756"> 68</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756">max_message_size</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; };</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">RunHandler</a>(<span class="keyword">const</span> <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a>&amp; param) = 0;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;};</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">// A wrapper class of an application provided rpc method handler.</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_method_handler.html">MethodHandler</a> {</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48"> 77</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48">RpcMethodHandler</a>(</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; std::function&lt;<a class="code" href="classgrpc_1_1_status.html">Status</a>(ServiceType*, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>*, <span class="keyword">const</span> RequestType*,</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; ResponseType*)&gt; func,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; ServiceType* service)</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; : func_(func), service_(service) {}</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41"> 83</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41">RunHandler</a>(<span class="keyword">const</span> <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a>&amp; param) <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; RequestType req;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status = <a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits&lt;RequestType&gt;::Deserialize</a>(</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; param.request, &amp;req, param.max_message_size);</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; ResponseType rsp;</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordflow">if</span> (status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()) {</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; status = func_(service_, param.server_context, &amp;req, &amp;rsp);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; }</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; GPR_ASSERT(!param.server_context-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet</a>&lt;<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a>, <a class="code" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a>,</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="classgrpc_1_1_call_op_server_send_status.html">CallOpServerSendStatus</a>&gt; ops;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; ops.SendInitialMetadata(param.server_context-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span> (status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()) {</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; status = ops.SendMessage(rsp);</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; ops.ServerSendStatus(param.server_context-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; param.call-&gt;PerformOps(&amp;ops);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; param.call-&gt;cq()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">// Application provided rpc handler function.</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; std::function&lt;<a class="code" href="classgrpc_1_1_status.html">Status</a>(ServiceType*, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>*, <span class="keyword">const</span> RequestType*,</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; ResponseType*)&gt; func_;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">// The class the above handler function lives in.</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; ServiceType* service_;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;};</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment">// A wrapper class of an application provided client streaming handler.</span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keyword">class </span>ClientStreamingHandler : <span class="keyword">public</span> MethodHandler {</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff"> 116</a></span>&#160; <a class="code" href="classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff">ClientStreamingHandler</a>(</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; std::function&lt;<a class="code" href="classgrpc_1_1_status.html">Status</a>(ServiceType*, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>*,</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <a class="code" href="classgrpc_1_1_server_reader.html">ServerReader&lt;RequestType&gt;</a>*, ResponseType*)&gt; func,</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; ServiceType* service)</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; : func_(func), service_(service) {}</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c"> 122</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c">RunHandler</a>(<span class="keyword">const</span> <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a>&amp; param) <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="classgrpc_1_1_server_reader.html">ServerReader&lt;RequestType&gt;</a> reader(param.call, param.server_context);</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; ResponseType rsp;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status = func_(service_, param.server_context, &amp;reader, &amp;rsp);</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; GPR_ASSERT(!param.server_context-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet</a>&lt;<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a>, <a class="code" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a>,</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="classgrpc_1_1_call_op_server_send_status.html">CallOpServerSendStatus</a>&gt; ops;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; ops.SendInitialMetadata(param.server_context-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span> (status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()) {</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; status = ops.SendMessage(rsp);</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; }</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; ops.ServerSendStatus(param.server_context-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; param.call-&gt;PerformOps(&amp;ops);</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; param.call-&gt;cq()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; }</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; std::function&lt;Status(ServiceType*, ServerContext*, ServerReader&lt;RequestType&gt;*,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; ResponseType*)&gt; func_;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; ServiceType* service_;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;};</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment">// A wrapper class of an application provided server streaming handler.</span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="keyword">class </span>ServerStreamingHandler : <span class="keyword">public</span> MethodHandler {</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5"> 149</a></span>&#160; <a class="code" href="classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5">ServerStreamingHandler</a>(</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; std::function&lt;<a class="code" href="classgrpc_1_1_status.html">Status</a>(ServiceType*, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>*, <span class="keyword">const</span> RequestType*,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="classgrpc_1_1_server_writer.html">ServerWriter&lt;ResponseType&gt;</a>*)&gt; func,</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; ServiceType* service)</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; : func_(func), service_(service) {}</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
+<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca"> 155</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca">RunHandler</a>(<span class="keyword">const</span> <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a>&amp; param) <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; RequestType req;</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status = <a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits&lt;RequestType&gt;::Deserialize</a>(</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; param.request, &amp;req, param.max_message_size);</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordflow">if</span> (status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()) {</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="classgrpc_1_1_server_writer.html">ServerWriter&lt;ResponseType&gt;</a> writer(param.call, param.server_context);</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; status = func_(service_, param.server_context, &amp;req, &amp;writer);</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata, CallOpServerSendStatus&gt;</a> ops;</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span> (!param.server_context-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; ops.SendInitialMetadata(param.server_context-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; }</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; ops.ServerSendStatus(param.server_context-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; param.call-&gt;PerformOps(&amp;ops);</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; param.call-&gt;cq()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; }</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; std::function&lt;<a class="code" href="classgrpc_1_1_status.html">Status</a>(ServiceType*, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>*, <span class="keyword">const</span> RequestType*,</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="classgrpc_1_1_server_writer.html">ServerWriter&lt;ResponseType&gt;</a>*)&gt; func_;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; ServiceType* service_;</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;};</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="comment">// A wrapper class of an application provided bidi-streaming handler.</span></div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="keyword">class </span>BidiStreamingHandler : <span class="keyword">public</span> MethodHandler {</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34"> 184</a></span>&#160; <a class="code" href="classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34">BidiStreamingHandler</a>(</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; std::function&lt;<a class="code" href="classgrpc_1_1_status.html">Status</a>(ServiceType*, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>*,</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter&lt;ResponseType, RequestType&gt;</a>*)&gt;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; func,</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; ServiceType* service)</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; : func_(func), service_(service) {}</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1"> 191</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1">RunHandler</a>(<span class="keyword">const</span> <a class="code" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a>&amp; param) <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter&lt;ResponseType, RequestType&gt;</a> stream(param.call,</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; param.server_context);</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status = func_(service_, param.server_context, &amp;stream);</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata, CallOpServerSendStatus&gt;</a> ops;</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">if</span> (!param.server_context-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; ops.SendInitialMetadata(param.server_context-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; }</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; ops.ServerSendStatus(param.server_context-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; param.call-&gt;PerformOps(&amp;ops);</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; param.call-&gt;cq()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; std::function&lt;<a class="code" href="classgrpc_1_1_status.html">Status</a>(ServiceType*, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>*,</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <a class="code" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter&lt;ResponseType, RequestType&gt;</a>*)&gt; func_;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; ServiceType* service_;</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;};</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="comment">// Server side rpc method class</span></div>
+<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_service_method.html"> 212</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a> {</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="comment">// Takes ownership of the handler</span></div>
+<div class="line"><a name="l00215"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da"> 215</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da">RpcServiceMethod</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">name</a>, <a class="code" href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">RpcMethod::RpcType</a> type,</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="classgrpc_1_1_method_handler.html">MethodHandler</a>* <a class="code" href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1">handler</a>)</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; : <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>(name, type, nullptr), handler_(handler) {}</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1"> 219</a></span>&#160; <a class="code" href="classgrpc_1_1_method_handler.html">MethodHandler</a>* <a class="code" href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1">handler</a>() { <span class="keywordflow">return</span> handler_.get(); }</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; std::unique_ptr&lt;MethodHandler&gt; handler_;</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;};</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="comment">// This class contains all the method information for an rpc service. It is</span></div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="comment">// used for registering a service on a grpc server.</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_service.html"> 227</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_service.html">RpcService</a> {</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; <span class="comment">// Takes ownership.</span></div>
+<div class="line"><a name="l00230"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578"> 230</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578">AddMethod</a>(<a class="code" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a>* method) { methods_.emplace_back(method); }</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div>
+<div class="line"><a name="l00232"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192"> 232</a></span>&#160; <a class="code" href="classgrpc_1_1_rpc_service_method.html">RpcServiceMethod</a>* <a class="code" href="classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192">GetMethod</a>(<span class="keywordtype">int</span> i) { <span class="keywordflow">return</span> methods_[i].get(); }</div>
+<div class="line"><a name="l00233"></a><span class="lineno"><a class="line" href="classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191"> 233</a></span>&#160; <span class="keywordtype">int</span> <a class="code" href="classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191">GetMethodCount</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> methods_.size(); }</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; std::vector&lt;std::unique_ptr&lt;RpcServiceMethod&gt;&gt; methods_;</div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;};</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_RPC_SERVICE_METHOD_H</span></div>
+<div class="ttc" id="classgrpc_1_1_method_handler_html"><div class="ttname"><a href="classgrpc_1_1_method_handler.html">grpc::MethodHandler</a></div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:54</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_html_af2c7369056129ef2e6fde87f040ba578"><div class="ttname"><a href="classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578">grpc::RpcService::AddMethod</a></div><div class="ttdeci">void AddMethod(RpcServiceMethod *method)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:230</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_html_adb8bee7f95fdd7bfb12e9c510fbdd192"><div class="ttname"><a href="classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192">grpc::RpcService::GetMethod</a></div><div class="ttdeci">RpcServiceMethod * GetMethod(int i)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:232</div></div>
+<div class="ttc" id="classgrpc_1_1_client_streaming_handler_html_a193efc3ca1c668dddacd42e25c4956ff"><div class="ttname"><a href="classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff">grpc::ClientStreamingHandler::ClientStreamingHandler</a></div><div class="ttdeci">ClientStreamingHandler(std::function&lt; Status(ServiceType *, ServerContext *, ServerReader&lt; RequestType &gt; *, ResponseType *)&gt; func, ServiceType *service)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:116</div></div>
+<div class="ttc" id="classgrpc_1_1_server_streaming_handler_html_af846a2bd80177f74bca1007597fbd2a5"><div class="ttname"><a href="classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5">grpc::ServerStreamingHandler::ServerStreamingHandler</a></div><div class="ttdeci">ServerStreamingHandler(std::function&lt; Status(ServiceType *, ServerContext *, const RequestType *, ServerWriter&lt; ResponseType &gt; *)&gt; func, ServiceType *service)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:149</div></div>
+<div class="ttc" id="structgrpc_1_1_method_handler_1_1_handler_parameter_html_ae079bb60a6b69f4e7bca79a11cfa0756"><div class="ttname"><a href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756">grpc::MethodHandler::HandlerParameter::max_message_size</a></div><div class="ttdeci">int max_message_size</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:68</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="structgrpc_1_1_method_handler_1_1_handler_parameter_html_a281166394b3ec1fc0962f3841ef22c3c"><div class="ttname"><a href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c">grpc::MethodHandler::HandlerParameter::server_context</a></div><div class="ttdeci">ServerContext * server_context</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:65</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_ace95416ed07409e43059a0dfe9e23688"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688">grpc::RpcMethod::RpcType</a></div><div class="ttdeci">RpcType</div><div class="ttdef"><b>Definition:</b> rpc_method.h:41</div></div>
+<div class="ttc" id="structgrpc_1_1_method_handler_1_1_handler_parameter_html_aebd5b34a7b5bc6e04ef5ab5df42e7e72"><div class="ttname"><a href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72">grpc::MethodHandler::HandlerParameter::call</a></div><div class="ttdeci">Call * call</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_server_streaming_handler_html_afd874fc0f3a73c4037d626d3ecbcccca"><div class="ttname"><a href="classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca">grpc::ServerStreamingHandler::RunHandler</a></div><div class="ttdeci">void RunHandler(const HandlerParameter &amp;param)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:155</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_server_send_status_html"><div class="ttname"><a href="classgrpc_1_1_call_op_server_send_status.html">grpc::CallOpServerSendStatus</a></div><div class="ttdef"><b>Definition:</b> call.h:360</div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_client_streaming_handler_html_a702cbf84fa766383bfbb818c8a16e67c"><div class="ttname"><a href="classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c">grpc::ClientStreamingHandler::RunHandler</a></div><div class="ttdeci">void RunHandler(const HandlerParameter &amp;param)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:122</div></div>
+<div class="ttc" id="stream_8h_html"><div class="ttname"><a href="stream_8h.html">stream.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_html"><div class="ttname"><a href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:53</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_service_method.html">grpc::RpcServiceMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:212</div></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_html"><div class="ttname"><a href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a></div><div class="ttdoc">Defines how to serialize and deserialize some type. </div><div class="ttdef"><b>Definition:</b> serialization_traits.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html">grpc::CallOpSendMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:190</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_html"><div class="ttname"><a href="classgrpc_1_1_rpc_service.html">grpc::RpcService</a></div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:227</div></div>
+<div class="ttc" id="classgrpc_1_1_method_handler_html_a8f901c44915f81bb86ecba0278f7db16"><div class="ttname"><a href="classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16">grpc::MethodHandler::RunHandler</a></div><div class="ttdeci">virtual void RunHandler(const HandlerParameter &amp;param)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_bidi_streaming_handler_html_a674385b5e9f48ffff0bcbc5d77f99bf1"><div class="ttname"><a href="classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1">grpc::BidiStreamingHandler::RunHandler</a></div><div class="ttdeci">void RunHandler(const HandlerParameter &amp;param)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:191</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_handler_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_handler_html_af18c4bdcfc73d0238b238097547e6a48"><div class="ttname"><a href="classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48">grpc::RpcMethodHandler::RpcMethodHandler</a></div><div class="ttdeci">RpcMethodHandler(std::function&lt; Status(ServiceType *, ServerContext *, const RequestType *, ResponseType *)&gt; func, ServiceType *service)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_method_handler_html_afc792a35059d6c46b78d7d9410f9a4b0"><div class="ttname"><a href="classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0">grpc::MethodHandler::~MethodHandler</a></div><div class="ttdeci">virtual ~MethodHandler()</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:56</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a></div><div class="ttdoc">Primary implementaiton of CallOpSetInterface. </div><div class="ttdef"><b>Definition:</b> call.h:506</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_handler_html_a3dd04e9149c844224390b403ff24fa41"><div class="ttname"><a href="classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41">grpc::RpcMethodHandler::RunHandler</a></div><div class="ttdeci">void RunHandler(const HandlerParameter &amp;param)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:83</div></div>
+<div class="ttc" id="classgrpc_1_1_server_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:55</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_bidi_streaming_handler_html_a341a08e8b6bab7dfd8debe0ed0178b34"><div class="ttname"><a href="classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34">grpc::BidiStreamingHandler::BidiStreamingHandler</a></div><div class="ttdeci">BidiStreamingHandler(std::function&lt; Status(ServiceType *, ServerContext *, ServerReaderWriter&lt; ResponseType, RequestType &gt; *)&gt; func, ServiceType *service)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:184</div></div>
+<div class="ttc" id="rpc__method_8h_html"><div class="ttname"><a href="rpc__method_8h.html">rpc_method.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a1f5b65c54d4e6dd502897e36040714dc"><div class="ttname"><a href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">grpc::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:55</div></div>
+<div class="ttc" id="structgrpc_1_1_method_handler_1_1_handler_parameter_html"><div class="ttname"><a href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">grpc::MethodHandler::HandlerParameter</a></div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html">grpc::CallOpSendInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:159</div></div>
+<div class="ttc" id="structgrpc_1_1_method_handler_1_1_handler_parameter_html_a339310bf784411fd5e7d7b9118704693"><div class="ttname"><a href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693">grpc::MethodHandler::HandlerParameter::HandlerParameter</a></div><div class="ttdeci">HandlerParameter(Call *c, ServerContext *context, grpc_byte_buffer *req, int max_size)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:58</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html_a6fb4872e0af4c79faffe2bb30b2cafe3"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3">grpc::RpcMethod::name</a></div><div class="ttdeci">const char * name() const </div><div class="ttdef"><b>Definition:</b> rpc_method.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_method_html_adcc8bfb7dc592f6b64fec6660f1cbaf1"><div class="ttname"><a href="classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1">grpc::RpcServiceMethod::handler</a></div><div class="ttdeci">MethodHandler * handler()</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:219</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_html_a779c023a42b33893a5ae2b7ca0ef5191"><div class="ttname"><a href="classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191">grpc::RpcService::GetMethodCount</a></div><div class="ttdeci">int GetMethodCount() const </div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:233</div></div>
+<div class="ttc" id="structgrpc_1_1_method_handler_1_1_handler_parameter_html_a82558a5f8a8d3c9b16be620092f67fa4"><div class="ttname"><a href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4">grpc::MethodHandler::HandlerParameter::request</a></div><div class="ttdeci">grpc_byte_buffer * request</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:67</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_method_html_a9a4a54d93c2c5d2b5b52ff50af5971da"><div class="ttname"><a href="classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da">grpc::RpcServiceMethod::RpcServiceMethod</a></div><div class="ttdeci">RpcServiceMethod(const char *name, RpcMethod::RpcType type, MethodHandler *handler)</div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:215</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_0.html b/doc/ref/c++/html/search/all_0.html
new file mode 100644
index 0000000000..17b6da85df
--- /dev/null
+++ b/doc/ref/c++/html/search/all_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_0.js b/doc/ref/c++/html/search/all_0.js
new file mode 100644
index 0000000000..0dd29abe92
--- /dev/null
+++ b/doc/ref/c++/html/search/all_0.js
@@ -0,0 +1,20 @@
+var searchData=
+[
+ ['clientasyncreader',['ClientAsyncReader',['../classgrpc_1_1_client_context.html#af5343062a44a5633b144751e59969237',1,'grpc::ClientContext']]],
+ ['clientasyncreaderwriter',['ClientAsyncReaderWriter',['../classgrpc_1_1_client_context.html#a5c0c96957129933bfe94a299c764eaa7',1,'grpc::ClientContext']]],
+ ['clientasyncresponsereader',['ClientAsyncResponseReader',['../classgrpc_1_1_client_context.html#a4b00162a9bd86e07669f2af67f85c73a',1,'grpc::ClientContext']]],
+ ['clientasyncwriter',['ClientAsyncWriter',['../classgrpc_1_1_client_context.html#af3547958eadfaeb18692865bd73999ad',1,'grpc::ClientContext']]],
+ ['clientreader',['ClientReader',['../classgrpc_1_1_client_context.html#ade499098cc91745c1c87147d7a7fb7bf',1,'grpc::ClientContext::ClientReader()'],['../classgrpc_1_1_completion_queue.html#ade499098cc91745c1c87147d7a7fb7bf',1,'grpc::CompletionQueue::ClientReader()']]],
+ ['clientreaderwriter',['ClientReaderWriter',['../classgrpc_1_1_client_context.html#a6d5659aa24edba057895be774e2752ec',1,'grpc::ClientContext::ClientReaderWriter()'],['../classgrpc_1_1_completion_queue.html#a6d5659aa24edba057895be774e2752ec',1,'grpc::CompletionQueue::ClientReaderWriter()']]],
+ ['clientwriter',['ClientWriter',['../classgrpc_1_1_client_context.html#a4498fada67d531d99a8642f47d746544',1,'grpc::ClientContext::ClientWriter()'],['../classgrpc_1_1_completion_queue.html#a4498fada67d531d99a8642f47d746544',1,'grpc::CompletionQueue::ClientWriter()']]],
+ ['interopcontextinspector',['InteropContextInspector',['../classgrpc_1_1_server_context.html#a54fd90aaca3685b127354412368eb1c6',1,'grpc::ServerContext']]],
+ ['server',['Server',['../classgrpc_1_1_completion_queue.html#a8c3fa4c066981aae114e41c3f9340144',1,'grpc::CompletionQueue::Server()'],['../classgrpc_1_1_server_context.html#a8c3fa4c066981aae114e41c3f9340144',1,'grpc::ServerContext::Server()'],['../classgrpc_1_1_server_credentials.html#a8c3fa4c066981aae114e41c3f9340144',1,'grpc::ServerCredentials::Server()']]],
+ ['serverasyncreader',['ServerAsyncReader',['../classgrpc_1_1_server_context.html#a774bb57486686958c67f29072de768ed',1,'grpc::ServerContext']]],
+ ['serverasyncreaderwriter',['ServerAsyncReaderWriter',['../classgrpc_1_1_server_context.html#a85f3f3dc5b92690c676b86571be20684',1,'grpc::ServerContext']]],
+ ['serverasyncresponsewriter',['ServerAsyncResponseWriter',['../classgrpc_1_1_server_context.html#a2c679b602d120c70a6713fe742704b4e',1,'grpc::ServerContext']]],
+ ['serverasyncwriter',['ServerAsyncWriter',['../classgrpc_1_1_server_context.html#a6068d9e3369a1016e7b75350b80f4f45',1,'grpc::ServerContext']]],
+ ['servercontext',['ServerContext',['../classgrpc_1_1_completion_queue.html#a6c5b4f4c66d254f341915982a17aac95',1,'grpc::CompletionQueue']]],
+ ['serverreader',['ServerReader',['../classgrpc_1_1_completion_queue.html#a4f20e2d049342ae00242bbc8021a44bd',1,'grpc::CompletionQueue::ServerReader()'],['../classgrpc_1_1_server_context.html#a4f20e2d049342ae00242bbc8021a44bd',1,'grpc::ServerContext::ServerReader()']]],
+ ['serverreaderwriter',['ServerReaderWriter',['../classgrpc_1_1_completion_queue.html#a8c0a0d64c582a952c8f16d8eac71c677',1,'grpc::CompletionQueue::ServerReaderWriter()'],['../classgrpc_1_1_server_context.html#a8c0a0d64c582a952c8f16d8eac71c677',1,'grpc::ServerContext::ServerReaderWriter()']]],
+ ['serverwriter',['ServerWriter',['../classgrpc_1_1_completion_queue.html#a2f2dfa831a62c43ad5647a45080488e3',1,'grpc::CompletionQueue::ServerWriter()'],['../classgrpc_1_1_server_context.html#a2f2dfa831a62c43ad5647a45080488e3',1,'grpc::ServerContext::ServerWriter()']]]
+];
diff --git a/doc/ref/c++/html/search/all_1.html b/doc/ref/c++/html/search/all_1.html
new file mode 100644
index 0000000000..e2906449f2
--- /dev/null
+++ b/doc/ref/c++/html/search/all_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_1.js b/doc/ref/c++/html/search/all_1.js
new file mode 100644
index 0000000000..0ce49340fe
--- /dev/null
+++ b/doc/ref/c++/html/search/all_1.js
@@ -0,0 +1,34 @@
+var searchData=
+[
+ ['aborted',['ABORTED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c',1,'grpc']]],
+ ['accesstokencredentials',['AccessTokenCredentials',['../namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f',1,'grpc']]],
+ ['add',['Add',['../classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30',1,'grpc::DynamicThreadPool::Add()'],['../classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026',1,'grpc::FixedSizeThreadPool::Add()'],['../classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce',1,'grpc::ThreadPoolInterface::Add()']]],
+ ['add_5fref',['ADD_REF',['../classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2',1,'grpc::Slice']]],
+ ['addcompletionqueue',['AddCompletionQueue',['../classgrpc_1_1_server_builder.html#accbbd95080ca974e84fa1d4cb2ea9518',1,'grpc::ServerBuilder']]],
+ ['addinitialmetadata',['AddInitialMetadata',['../classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f',1,'grpc::ServerContext']]],
+ ['addlisteningport',['AddListeningPort',['../classgrpc_1_1_server_builder.html#a256e035e62b43cd79137abf7c066902a',1,'grpc::ServerBuilder']]],
+ ['addmetadata',['AddMetadata',['../classgrpc_1_1_client_context.html#a69a026f073ef5934697568d689440bd4',1,'grpc::ClientContext']]],
+ ['addmethod',['AddMethod',['../classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578',1,'grpc::RpcService']]],
+ ['addop',['AddOp',['../classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8',1,'grpc::CallNoOp::AddOp()'],['../classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77',1,'grpc::CallOpSendInitialMetadata::AddOp()'],['../classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e',1,'grpc::CallOpSendMessage::AddOp()'],['../classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a',1,'grpc::CallOpRecvMessage::AddOp()'],['../classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc',1,'grpc::CallOpGenericRecvMessage::AddOp()'],['../classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a',1,'grpc::CallOpClientSendClose::AddOp()'],['../classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b',1,'grpc::CallOpServerSendStatus::AddOp()'],['../classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74',1,'grpc::CallOpRecvInitialMetadata::AddOp()'],['../classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62',1,'grpc::CallOpClientRecvStatus::AddOp()']]],
+ ['addref',['AddRef',['../classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2',1,'grpc::Slice']]],
+ ['addtrailingmetadata',['AddTrailingMetadata',['../classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c',1,'grpc::ServerContext']]],
+ ['already_5fexists',['ALREADY_EXISTS',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b',1,'grpc']]],
+ ['applytocall',['ApplyToCall',['../classgrpc_1_1_credentials.html#a2b3162e0dbb4530ac1c4b81a0339b1e1',1,'grpc::Credentials']]],
+ ['assecurecredentials',['AsSecureCredentials',['../classgrpc_1_1_credentials.html#aefc960d2b52b15f2561946e0f840874f',1,'grpc::Credentials']]],
+ ['async_5fgeneric_5fservice_2eh',['async_generic_service.h',['../async__generic__service_8h.html',1,'']]],
+ ['async_5funary_5fcall_2eh',['async_unary_call.h',['../async__unary__call_8h.html',1,'']]],
+ ['asyncgenericservice',['AsyncGenericService',['../classgrpc_1_1_server.html#afa12bc5912105e1966887391881de595',1,'grpc::Server::AsyncGenericService()'],['../classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae',1,'grpc::AsyncGenericService::AsyncGenericService()']]],
+ ['asyncgenericservice',['AsyncGenericService',['../classgrpc_1_1_async_generic_service.html',1,'grpc']]],
+ ['asynchronousservice',['AsynchronousService',['../classgrpc_1_1_asynchronous_service.html',1,'grpc']]],
+ ['asynchronousservice',['AsynchronousService',['../classgrpc_1_1_server.html#a9f65421947ee8cbae15ff96b44f6d532',1,'grpc::Server::AsynchronousService()'],['../classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b',1,'grpc::AsynchronousService::AsynchronousService()']]],
+ ['asyncnext',['AsyncNext',['../classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4',1,'grpc::CompletionQueue']]],
+ ['asyncreaderinterface',['AsyncReaderInterface',['../classgrpc_1_1_async_reader_interface.html',1,'grpc']]],
+ ['asyncwriterinterface',['AsyncWriterInterface',['../classgrpc_1_1_async_writer_interface.html',1,'grpc']]],
+ ['auth_5fcontext',['auth_context',['../classgrpc_1_1_client_context.html#a02f279bf74e26d7c32d0b18dc73dccea',1,'grpc::ClientContext::auth_context()'],['../classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e',1,'grpc::ServerContext::auth_context()']]],
+ ['auth_5fcontext_2eh',['auth_context.h',['../auth__context_8h.html',1,'']]],
+ ['auth_5fproperty_5fiterator_2eh',['auth_property_iterator.h',['../auth__property__iterator_8h.html',1,'']]],
+ ['authcontext',['AuthContext',['../classgrpc_1_1_auth_context.html',1,'grpc']]],
+ ['authproperty',['AuthProperty',['../namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee',1,'grpc']]],
+ ['authpropertyiterator',['AuthPropertyIterator',['../classgrpc_1_1_auth_property_iterator.html',1,'grpc']]],
+ ['authpropertyiterator',['AuthPropertyIterator',['../classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949',1,'grpc::AuthPropertyIterator::AuthPropertyIterator()'],['../classgrpc_1_1_auth_property_iterator.html#aee44bb7255a99611cf490532b7e110d5',1,'grpc::AuthPropertyIterator::AuthPropertyIterator(const grpc_auth_property *property, const grpc_auth_property_iterator *iter)']]]
+];
diff --git a/doc/ref/c++/html/search/all_10.html b/doc/ref/c++/html/search/all_10.html
new file mode 100644
index 0000000000..c55c8367e4
--- /dev/null
+++ b/doc/ref/c++/html/search/all_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_10.js b/doc/ref/c++/html/search/all_10.js
new file mode 100644
index 0000000000..1021d56350
--- /dev/null
+++ b/doc/ref/c++/html/search/all_10.js
@@ -0,0 +1,33 @@
+var searchData=
+[
+ ['raw_5fdeadline',['raw_deadline',['../classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652',1,'grpc::ClientContext::raw_deadline()'],['../classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc',1,'grpc::ServerContext::raw_deadline()']]],
+ ['raw_5ftime',['raw_time',['../classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6',1,'grpc::TimePoint::raw_time()'],['../classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2',1,'grpc::TimePoint&lt; gpr_timespec &gt;::raw_time()'],['../classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93',1,'grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;::raw_time()']]],
+ ['read',['Read',['../classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8',1,'grpc::ReaderInterface::Read()'],['../classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7',1,'grpc::ClientReader::Read()'],['../classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c',1,'grpc::ClientReaderWriter::Read()'],['../classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0',1,'grpc::ServerReader::Read()'],['../classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d',1,'grpc::ServerReaderWriter::Read()'],['../classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11',1,'grpc::AsyncReaderInterface::Read()'],['../classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d',1,'grpc::ClientAsyncReader::Read()'],['../classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f',1,'grpc::ClientAsyncReaderWriter::Read()'],['../classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f',1,'grpc::ServerAsyncReader::Read()'],['../classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a',1,'grpc::ServerAsyncReaderWriter::Read()']]],
+ ['readerinterface',['ReaderInterface',['../classgrpc_1_1_reader_interface.html',1,'grpc']]],
+ ['readinitialmetadata',['ReadInitialMetadata',['../classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c',1,'grpc::ClientAsyncResponseReaderInterface::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b',1,'grpc::ClientAsyncResponseReader::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174',1,'grpc::ClientAsyncStreamingInterface::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863',1,'grpc::ClientAsyncReader::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7',1,'grpc::ClientAsyncWriter::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162',1,'grpc::ClientAsyncReaderWriter::ReadInitialMetadata()']]],
+ ['recvinitialmetadata',['RecvInitialMetadata',['../classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e',1,'grpc::CallOpRecvInitialMetadata']]],
+ ['recvmessage',['RecvMessage',['../classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c',1,'grpc::CallOpRecvMessage::RecvMessage()'],['../classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788',1,'grpc::CallOpGenericRecvMessage::RecvMessage()']]],
+ ['refreshtokencredentials',['RefreshTokenCredentials',['../namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d',1,'grpc']]],
+ ['registerasyncgenericservice',['RegisterAsyncGenericService',['../classgrpc_1_1_server_builder.html#ac62b0aa4c0448907e02d15386d58ef86',1,'grpc::ServerBuilder']]],
+ ['registerasyncservice',['RegisterAsyncService',['../classgrpc_1_1_server_builder.html#a2da69a943b10839d6993f9b292aaf578',1,'grpc::ServerBuilder::RegisterAsyncService(AsynchronousService *service)'],['../classgrpc_1_1_server_builder.html#a2107596214baf71230f4f270dec1d064',1,'grpc::ServerBuilder::RegisterAsyncService(const grpc::string &amp;host, AsynchronousService *service)']]],
+ ['registermethod',['RegisterMethod',['../classgrpc_1_1_channel_interface.html#a267926300784051328390b2f7648c99f',1,'grpc::ChannelInterface']]],
+ ['registerservice',['RegisterService',['../classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66',1,'grpc::ServerBuilder::RegisterService(SynchronousService *service)'],['../classgrpc_1_1_server_builder.html#ad961d91042fe44aa38fa3e1d57120861',1,'grpc::ServerBuilder::RegisterService(const grpc::string &amp;host, SynchronousService *service)']]],
+ ['request',['request',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4',1,'grpc::MethodHandler::HandlerParameter']]],
+ ['requestasyncunary',['RequestAsyncUnary',['../classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990',1,'grpc::AsynchronousService']]],
+ ['requestbidistreaming',['RequestBidiStreaming',['../classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608',1,'grpc::AsynchronousService']]],
+ ['requestcall',['RequestCall',['../classgrpc_1_1_async_generic_service.html#aeab5c20e89a754d5add4bdaad01a3ef6',1,'grpc::AsyncGenericService']]],
+ ['requestclientstreaming',['RequestClientStreaming',['../classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369',1,'grpc::AsynchronousService']]],
+ ['requestserverstreaming',['RequestServerStreaming',['../classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564',1,'grpc::AsynchronousService']]],
+ ['resource_5fexhausted',['RESOURCE_EXHAUSTED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f',1,'grpc']]],
+ ['rpc_5fmethod_2eh',['rpc_method.h',['../rpc__method_8h.html',1,'']]],
+ ['rpc_5fservice_5fmethod_2eh',['rpc_service_method.h',['../rpc__service__method_8h.html',1,'']]],
+ ['rpcmethod',['RpcMethod',['../classgrpc_1_1_rpc_method.html',1,'grpc']]],
+ ['rpcmethod',['RpcMethod',['../classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94',1,'grpc::RpcMethod']]],
+ ['rpcmethodhandler',['RpcMethodHandler',['../classgrpc_1_1_rpc_method_handler.html',1,'grpc']]],
+ ['rpcmethodhandler',['RpcMethodHandler',['../classgrpc_1_1_completion_queue.html#a76b9bb18b02084e9eaa8c9b99c668676',1,'grpc::CompletionQueue::RpcMethodHandler()'],['../classgrpc_1_1_server_context.html#a76b9bb18b02084e9eaa8c9b99c668676',1,'grpc::ServerContext::RpcMethodHandler()'],['../classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48',1,'grpc::RpcMethodHandler::RpcMethodHandler()']]],
+ ['rpcservice',['RpcService',['../classgrpc_1_1_rpc_service.html',1,'grpc']]],
+ ['rpcservicemethod',['RpcServiceMethod',['../classgrpc_1_1_rpc_service_method.html',1,'grpc']]],
+ ['rpcservicemethod',['RpcServiceMethod',['../classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da',1,'grpc::RpcServiceMethod']]],
+ ['rpctype',['RpcType',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688',1,'grpc::RpcMethod']]],
+ ['runhandler',['RunHandler',['../classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16',1,'grpc::MethodHandler::RunHandler()'],['../classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41',1,'grpc::RpcMethodHandler::RunHandler()'],['../classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c',1,'grpc::ClientStreamingHandler::RunHandler()'],['../classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca',1,'grpc::ServerStreamingHandler::RunHandler()'],['../classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1',1,'grpc::BidiStreamingHandler::RunHandler()']]]
+];
diff --git a/doc/ref/c++/html/search/all_11.html b/doc/ref/c++/html/search/all_11.html
new file mode 100644
index 0000000000..6f3943a941
--- /dev/null
+++ b/doc/ref/c++/html/search/all_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_11.js b/doc/ref/c++/html/search/all_11.js
new file mode 100644
index 0000000000..d051cfed92
--- /dev/null
+++ b/doc/ref/c++/html/search/all_11.js
@@ -0,0 +1,94 @@
+var searchData=
+[
+ ['secureauthcontext',['SecureAuthContext',['../classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d',1,'grpc::AuthPropertyIterator']]],
+ ['securecredentials',['SecureCredentials',['../classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66',1,'grpc::ChannelArguments']]],
+ ['send_5f',['send_',['../classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30',1,'grpc::CallOpSendInitialMetadata']]],
+ ['sendinitialmetadata',['SendInitialMetadata',['../classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7',1,'grpc::ServerAsyncResponseWriter::SendInitialMetadata()'],['../classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d',1,'grpc::CallOpSendInitialMetadata::SendInitialMetadata()'],['../classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c',1,'grpc::ServerAsyncStreamingInterface::SendInitialMetadata()'],['../classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b',1,'grpc::ServerReader::SendInitialMetadata()'],['../classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274',1,'grpc::ServerWriter::SendInitialMetadata()'],['../classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5',1,'grpc::ServerReaderWriter::SendInitialMetadata()'],['../classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6',1,'grpc::ServerAsyncReader::SendInitialMetadata()'],['../classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455',1,'grpc::ServerAsyncWriter::SendInitialMetadata()'],['../classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533',1,'grpc::ServerAsyncReaderWriter::SendInitialMetadata()']]],
+ ['sendmessage',['SendMessage',['../classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9',1,'grpc::CallOpSendMessage::SendMessage(const M &amp;message, const WriteOptions &amp;options) GRPC_MUST_USE_RESULT'],['../classgrpc_1_1_call_op_send_message.html#ad9928eeba69f23f54d1c378517a15222',1,'grpc::CallOpSendMessage::SendMessage(const M &amp;message) GRPC_MUST_USE_RESULT']]],
+ ['serialization_5ftraits_2eh',['serialization_traits.h',['../serialization__traits_8h.html',1,'']]],
+ ['serializationtraits',['SerializationTraits',['../classgrpc_1_1_serialization_traits.html',1,'grpc']]],
+ ['serializationtraits_3c_20bytebuffer_2c_20void_20_3e',['SerializationTraits&lt; ByteBuffer, void &gt;',['../classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html',1,'grpc']]],
+ ['serializationtraits_3c_20bytebuffer_2c_20void_20_3e',['SerializationTraits&lt; ByteBuffer, void &gt;',['../classgrpc_1_1_byte_buffer.html#ab90fe50537dd6fe009b7b913652420f0',1,'grpc::ByteBuffer']]],
+ ['serializationtraits_3c_20t_2c_20typename_20std_3a_3aenable_5fif_3c_20std_3a_3ais_5fbase_5fof_3c_20grpc_3a_3aprotobuf_3a_3amessage_2c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e',['SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;',['../classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html',1,'grpc']]],
+ ['serialize',['Serialize',['../classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33',1,'grpc::SerializationTraits&lt; ByteBuffer, void &gt;::Serialize()'],['../classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c',1,'grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;::Serialize()']]],
+ ['serializeproto',['SerializeProto',['../namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb',1,'grpc']]],
+ ['server',['Server',['../classgrpc_1_1_server.html',1,'grpc']]],
+ ['server',['Server',['../classgrpc_1_1_generic_server_context.html#ac2055578ac48afabe5af487878450f68',1,'grpc::GenericServerContext::Server()'],['../classgrpc_1_1_async_generic_service.html#ac2055578ac48afabe5af487878450f68',1,'grpc::AsyncGenericService::Server()'],['../classgrpc_1_1_server_async_streaming_interface.html#ac2055578ac48afabe5af487878450f68',1,'grpc::ServerAsyncStreamingInterface::Server()'],['../classgrpc_1_1_asynchronous_service.html#ac2055578ac48afabe5af487878450f68',1,'grpc::AsynchronousService::Server()']]],
+ ['server_2eh',['server.h',['../server_8h.html',1,'']]],
+ ['server_5fbuilder_2eh',['server_builder.h',['../server__builder_8h.html',1,'']]],
+ ['server_5fcontext',['server_context',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c',1,'grpc::MethodHandler::HandlerParameter']]],
+ ['server_5fcontext_2eh',['server_context.h',['../server__context_8h.html',1,'']]],
+ ['server_5fcredentials_2eh',['server_credentials.h',['../server__credentials_8h.html',1,'']]],
+ ['server_5fstreaming',['SERVER_STREAMING',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775',1,'grpc::RpcMethod']]],
+ ['serverasyncreader',['ServerAsyncReader',['../classgrpc_1_1_server_async_reader.html',1,'grpc']]],
+ ['serverasyncreader',['ServerAsyncReader',['../classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e',1,'grpc::ServerAsyncReader']]],
+ ['serverasyncreaderwriter',['ServerAsyncReaderWriter',['../classgrpc_1_1_server_async_reader_writer.html',1,'grpc']]],
+ ['serverasyncreaderwriter',['ServerAsyncReaderWriter',['../classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef',1,'grpc::ServerAsyncReaderWriter']]],
+ ['serverasyncresponsewriter',['ServerAsyncResponseWriter',['../classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9',1,'grpc::ServerAsyncResponseWriter']]],
+ ['serverasyncresponsewriter',['ServerAsyncResponseWriter',['../classgrpc_1_1_server_async_response_writer.html',1,'grpc']]],
+ ['serverasyncstreaminginterface',['ServerAsyncStreamingInterface',['../classgrpc_1_1_server_async_streaming_interface.html',1,'grpc']]],
+ ['serverasyncwriter',['ServerAsyncWriter',['../classgrpc_1_1_server_async_writer.html',1,'grpc']]],
+ ['serverasyncwriter',['ServerAsyncWriter',['../classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2',1,'grpc::ServerAsyncWriter']]],
+ ['serverbuilder',['ServerBuilder',['../classgrpc_1_1_server_builder.html',1,'grpc']]],
+ ['serverbuilder',['ServerBuilder',['../classgrpc_1_1_server_completion_queue.html#a8c2db91f514d534f06396d90c1b1f2c4',1,'grpc::ServerCompletionQueue::ServerBuilder()'],['../classgrpc_1_1_server.html#a8c2db91f514d534f06396d90c1b1f2c4',1,'grpc::Server::ServerBuilder()'],['../classgrpc_1_1_server_builder.html#a208346e343cd01351492f0cace59b242',1,'grpc::ServerBuilder::ServerBuilder()']]],
+ ['servercompletionqueue',['ServerCompletionQueue',['../classgrpc_1_1_server_completion_queue.html',1,'grpc']]],
+ ['servercontext',['ServerContext',['../classgrpc_1_1_server_context.html',1,'grpc']]],
+ ['servercontext',['ServerContext',['../classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff',1,'grpc::ServerContext']]],
+ ['servercredentials',['ServerCredentials',['../classgrpc_1_1_server_credentials.html',1,'grpc']]],
+ ['serverreader',['ServerReader',['../classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521',1,'grpc::ServerReader']]],
+ ['serverreader',['ServerReader',['../classgrpc_1_1_server_reader.html',1,'grpc']]],
+ ['serverreaderwriter',['ServerReaderWriter',['../classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52',1,'grpc::ServerReaderWriter']]],
+ ['serverreaderwriter',['ServerReaderWriter',['../classgrpc_1_1_server_reader_writer.html',1,'grpc']]],
+ ['serversendstatus',['ServerSendStatus',['../classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7',1,'grpc::CallOpServerSendStatus']]],
+ ['serverstreaminghandler',['ServerStreamingHandler',['../classgrpc_1_1_server_streaming_handler.html',1,'grpc']]],
+ ['serverstreaminghandler',['ServerStreamingHandler',['../classgrpc_1_1_completion_queue.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c',1,'grpc::CompletionQueue::ServerStreamingHandler()'],['../classgrpc_1_1_server_context.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c',1,'grpc::ServerContext::ServerStreamingHandler()'],['../classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5',1,'grpc::ServerStreamingHandler::ServerStreamingHandler()']]],
+ ['serverwriter',['ServerWriter',['../classgrpc_1_1_server_writer.html',1,'grpc']]],
+ ['serverwriter',['ServerWriter',['../classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2',1,'grpc::ServerWriter']]],
+ ['service',['service',['../classgrpc_1_1_synchronous_service.html#ad9eb51c9dc0cedfd838c23db47349796',1,'grpc::SynchronousService']]],
+ ['service_5ftype_2eh',['service_type.h',['../service__type_8h.html',1,'']]],
+ ['serviceaccountcredentials',['ServiceAccountCredentials',['../namespacegrpc.html#af2624b99e948624865a346311a613848',1,'grpc']]],
+ ['serviceaccountjwtaccesscredentials',['ServiceAccountJWTAccessCredentials',['../namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517',1,'grpc']]],
+ ['set_5fauthority',['set_authority',['../classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682',1,'grpc::ClientContext']]],
+ ['set_5fbuffer_5fhint',['set_buffer_hint',['../classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8',1,'grpc::WriteOptions']]],
+ ['set_5fcensus_5fcontext',['set_census_context',['../classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd',1,'grpc::ClientContext']]],
+ ['set_5fcompression_5falgorithm',['set_compression_algorithm',['../classgrpc_1_1_client_context.html#a67a71b32afe1d71189aa3a24146ec61d',1,'grpc::ClientContext::set_compression_algorithm()'],['../classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72',1,'grpc::ServerContext::set_compression_algorithm()']]],
+ ['set_5fcompression_5flevel',['set_compression_level',['../classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d',1,'grpc::ServerContext']]],
+ ['set_5fcredentials',['set_credentials',['../classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb',1,'grpc::ClientContext']]],
+ ['set_5fdeadline',['set_deadline',['../classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6',1,'grpc::ClientContext']]],
+ ['set_5fmax_5fmessage_5fsize',['set_max_message_size',['../classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a',1,'grpc::CallOpSetInterface']]],
+ ['set_5fno_5fcompression',['set_no_compression',['../classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66',1,'grpc::WriteOptions']]],
+ ['set_5foutput_5ftag',['set_output_tag',['../classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274',1,'grpc::CallOpSet']]],
+ ['setchannelargs',['SetChannelArgs',['../classgrpc_1_1_channel_arguments.html#a90ce1857947d36ff894402ad10cb6048',1,'grpc::ChannelArguments']]],
+ ['setcompressionalgorithm',['SetCompressionAlgorithm',['../classgrpc_1_1_channel_arguments.html#aaf332071bbdff5e4a7f3352f4ad564d5',1,'grpc::ChannelArguments']]],
+ ['setint',['SetInt',['../classgrpc_1_1_channel_arguments.html#a2b1c60568a4906bfe0b21781b09cdbbf',1,'grpc::ChannelArguments']]],
+ ['setmaxmessagesize',['SetMaxMessageSize',['../classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9',1,'grpc::ServerBuilder']]],
+ ['setssltargetnameoverride',['SetSslTargetNameOverride',['../classgrpc_1_1_channel_arguments.html#af4182e659448184f9618f079a1570328',1,'grpc::ChannelArguments']]],
+ ['setstring',['SetString',['../classgrpc_1_1_channel_arguments.html#a852ac2fe0ac7421fa82927ddda612947',1,'grpc::ChannelArguments']]],
+ ['setthreadpool',['SetThreadPool',['../classgrpc_1_1_server_builder.html#aea5dd313149029114c60571e5ee8b4cd',1,'grpc::ServerBuilder']]],
+ ['shutdown',['SHUTDOWN',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b',1,'grpc::CompletionQueue::SHUTDOWN()'],['../classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670',1,'grpc::CompletionQueue::Shutdown()'],['../classgrpc_1_1_server.html#a777a9c8873ae4969585083e0e62482dc',1,'grpc::Server::Shutdown()']]],
+ ['size',['size',['../classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724',1,'grpc::Slice']]],
+ ['slice',['Slice',['../classgrpc_1_1_slice.html',1,'grpc']]],
+ ['slice',['Slice',['../classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f',1,'grpc::Slice::Slice()'],['../classgrpc_1_1_slice.html#a0cf5718377c0ae4584d58bb6c1b042f2',1,'grpc::Slice::Slice(gpr_slice slice, AddRef)'],['../classgrpc_1_1_slice.html#ad952f787620a1fe4c519e53e9e1aa921',1,'grpc::Slice::Slice(gpr_slice slice, StealRef)'],['../classgrpc_1_1_slice.html#a0a6b936d72f7ae35f083d003d3e0c8a3',1,'grpc::Slice::Slice(const Slice &amp;other)']]],
+ ['slice_2eh',['slice.h',['../slice_8h.html',1,'']]],
+ ['sneakycallopset',['SneakyCallOpSet',['../classgrpc_1_1_sneaky_call_op_set.html',1,'grpc']]],
+ ['sneakycallopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopclientsendclose_20_3e',['SneakyCallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;',['../classgrpc_1_1_sneaky_call_op_set.html',1,'grpc']]],
+ ['sslcredentials',['SslCredentials',['../namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16',1,'grpc']]],
+ ['sslcredentialsoptions',['SslCredentialsOptions',['../structgrpc_1_1_ssl_credentials_options.html',1,'grpc']]],
+ ['sslservercredentials',['SslServerCredentials',['../namespacegrpc.html#adf4e07954696095e27c0181691a1f752',1,'grpc']]],
+ ['sslservercredentialsoptions',['SslServerCredentialsOptions',['../structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105',1,'grpc::SslServerCredentialsOptions']]],
+ ['sslservercredentialsoptions',['SslServerCredentialsOptions',['../structgrpc_1_1_ssl_server_credentials_options.html',1,'grpc']]],
+ ['status',['Status',['../classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c',1,'grpc::Status::Status()'],['../classgrpc_1_1_status.html#a8419a0b716f961c8d2d781c65f03def6',1,'grpc::Status::Status(StatusCode code, const grpc::string &amp;details)']]],
+ ['status',['Status',['../classgrpc_1_1_status.html',1,'grpc']]],
+ ['status_2eh',['status.h',['../status_8h.html',1,'']]],
+ ['status_5fcode_5fenum_2eh',['status_code_enum.h',['../status__code__enum_8h.html',1,'']]],
+ ['statuscode',['StatusCode',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b',1,'grpc']]],
+ ['steal_5fref',['STEAL_REF',['../classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7',1,'grpc::Slice']]],
+ ['stealref',['StealRef',['../classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a',1,'grpc::Slice']]],
+ ['stream_2eh',['stream.h',['../stream_8h.html',1,'']]],
+ ['string',['string',['../namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203',1,'grpc']]],
+ ['swap',['Swap',['../classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d',1,'grpc::ChannelArguments']]],
+ ['sync_2eh',['sync.h',['../sync_8h.html',1,'']]],
+ ['sync_5fcxx11_2eh',['sync_cxx11.h',['../sync__cxx11_8h.html',1,'']]],
+ ['sync_5fno_5fcxx11_2eh',['sync_no_cxx11.h',['../sync__no__cxx11_8h.html',1,'']]],
+ ['synchronousservice',['SynchronousService',['../classgrpc_1_1_synchronous_service.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/all_12.html b/doc/ref/c++/html/search/all_12.html
new file mode 100644
index 0000000000..3c7c89ef60
--- /dev/null
+++ b/doc/ref/c++/html/search/all_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_12.js b/doc/ref/c++/html/search/all_12.js
new file mode 100644
index 0000000000..5e8553201f
--- /dev/null
+++ b/doc/ref/c++/html/search/all_12.js
@@ -0,0 +1,21 @@
+var searchData=
+[
+ ['channelargumentstest',['ChannelArgumentsTest',['../classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b',1,'grpc::ChannelArguments']]],
+ ['thd_2eh',['thd.h',['../thd_8h.html',1,'']]],
+ ['thd_5fcxx11_2eh',['thd_cxx11.h',['../thd__cxx11_8h.html',1,'']]],
+ ['thd_5fno_5fcxx11_2eh',['thd_no_cxx11.h',['../thd__no__cxx11_8h.html',1,'']]],
+ ['thread',['thread',['../classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269',1,'grpc::thread']]],
+ ['thread',['thread',['../classgrpc_1_1thread.html',1,'grpc']]],
+ ['thread_5fpool_5finterface_2eh',['thread_pool_interface.h',['../thread__pool__interface_8h.html',1,'']]],
+ ['threadpoolinterface',['ThreadPoolInterface',['../classgrpc_1_1_thread_pool_interface.html',1,'grpc']]],
+ ['time_2eh',['time.h',['../time_8h.html',1,'']]],
+ ['timeout',['TIMEOUT',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04',1,'grpc::CompletionQueue']]],
+ ['timepoint',['TimePoint',['../classgrpc_1_1_time_point.html',1,'grpc']]],
+ ['timepoint',['TimePoint',['../classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad',1,'grpc::TimePoint::TimePoint()'],['../classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007',1,'grpc::TimePoint&lt; gpr_timespec &gt;::TimePoint()'],['../classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f',1,'grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;::TimePoint()']]],
+ ['timepoint2timespec',['Timepoint2Timespec',['../namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c',1,'grpc']]],
+ ['timepoint_3c_20gpr_5ftimespec_20_3e',['TimePoint&lt; gpr_timespec &gt;',['../classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html',1,'grpc']]],
+ ['timepoint_3c_20std_3a_3achrono_3a_3asystem_5fclock_3a_3atime_5fpoint_20_3e',['TimePoint&lt; std::chrono::system_clock::time_point &gt;',['../classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html',1,'grpc']]],
+ ['timepointhr2timespec',['TimepointHR2Timespec',['../namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369',1,'grpc']]],
+ ['timespec2timepoint',['Timespec2Timepoint',['../namespacegrpc.html#a12896f279762d0100669da708d466ec1',1,'grpc']]],
+ ['trycancel',['TryCancel',['../classgrpc_1_1_client_context.html#abd0f6715c30287b75288015eee628984',1,'grpc::ClientContext']]]
+];
diff --git a/doc/ref/c++/html/search/all_13.html b/doc/ref/c++/html/search/all_13.html
new file mode 100644
index 0000000000..0bd629b86b
--- /dev/null
+++ b/doc/ref/c++/html/search/all_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_13.js b/doc/ref/c++/html/search/all_13.js
new file mode 100644
index 0000000000..9b06114f07
--- /dev/null
+++ b/doc/ref/c++/html/search/all_13.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['unauthenticated',['UNAUTHENTICATED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e',1,'grpc']]],
+ ['unavailable',['UNAVAILABLE',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3',1,'grpc']]],
+ ['unimplemented',['UNIMPLEMENTED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b',1,'grpc']]],
+ ['unique_5flock',['unique_lock',['../classgrpc_1_1unique__lock.html',1,'grpc']]],
+ ['unique_5flock',['unique_lock',['../classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633',1,'grpc::unique_lock']]],
+ ['unknown',['UNKNOWN',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256',1,'grpc']]],
+ ['unlock',['unlock',['../classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd',1,'grpc::unique_lock']]],
+ ['unlock_5finternal',['unlock_internal',['../classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5',1,'grpc::lock_guard']]]
+];
diff --git a/doc/ref/c++/html/search/all_14.html b/doc/ref/c++/html/search/all_14.html
new file mode 100644
index 0000000000..2ad638b277
--- /dev/null
+++ b/doc/ref/c++/html/search/all_14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_14.js b/doc/ref/c++/html/search/all_14.js
new file mode 100644
index 0000000000..e4d2a28201
--- /dev/null
+++ b/doc/ref/c++/html/search/all_14.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['wait',['Wait',['../classgrpc_1_1_server.html#a6f1ec2700c94637813178a5b5f71d6d5',1,'grpc::Server::Wait()'],['../classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8',1,'grpc::condition_variable::wait()']]],
+ ['waitforinitialmetadata',['WaitForInitialMetadata',['../classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19',1,'grpc::ClientReaderInterface::WaitForInitialMetadata()'],['../classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e',1,'grpc::ClientReader::WaitForInitialMetadata()'],['../classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e',1,'grpc::ClientReaderWriterInterface::WaitForInitialMetadata()'],['../classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be',1,'grpc::ClientReaderWriter::WaitForInitialMetadata()']]],
+ ['write',['Write',['../classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44',1,'grpc::WriterInterface::Write(const W &amp;msg, const WriteOptions &amp;options)=0'],['../classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a',1,'grpc::WriterInterface::Write(const W &amp;msg)'],['../classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36',1,'grpc::ClientWriter::Write()'],['../classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762',1,'grpc::ClientReaderWriter::Write()'],['../classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a',1,'grpc::ServerWriter::Write()'],['../classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467',1,'grpc::ServerReaderWriter::Write()'],['../classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4',1,'grpc::AsyncWriterInterface::Write()'],['../classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a',1,'grpc::ClientAsyncWriter::Write()'],['../classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3',1,'grpc::ClientAsyncReaderWriter::Write()'],['../classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5',1,'grpc::ServerAsyncWriter::Write()'],['../classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35',1,'grpc::ServerAsyncReaderWriter::Write()']]],
+ ['writeoptions',['WriteOptions',['../classgrpc_1_1_write_options.html#a6a4e429313200ed6c017c5d306e26e93',1,'grpc::WriteOptions::WriteOptions()'],['../classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021',1,'grpc::WriteOptions::WriteOptions(const WriteOptions &amp;other)']]],
+ ['writeoptions',['WriteOptions',['../classgrpc_1_1_write_options.html',1,'grpc']]],
+ ['writerinterface',['WriterInterface',['../classgrpc_1_1_writer_interface.html',1,'grpc']]],
+ ['writesdone',['WritesDone',['../classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5',1,'grpc::ClientWriterInterface::WritesDone()'],['../classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352',1,'grpc::ClientWriter::WritesDone()'],['../classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8',1,'grpc::ClientReaderWriterInterface::WritesDone()'],['../classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898',1,'grpc::ClientReaderWriter::WritesDone()'],['../classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822',1,'grpc::ClientAsyncWriterInterface::WritesDone()'],['../classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47',1,'grpc::ClientAsyncWriter::WritesDone()'],['../classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3',1,'grpc::ClientAsyncReaderWriterInterface::WritesDone()'],['../classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637',1,'grpc::ClientAsyncReaderWriter::WritesDone()']]]
+];
diff --git a/doc/ref/c++/html/search/all_15.html b/doc/ref/c++/html/search/all_15.html
new file mode 100644
index 0000000000..d3b5274ba7
--- /dev/null
+++ b/doc/ref/c++/html/search/all_15.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_15.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_15.js b/doc/ref/c++/html/search/all_15.js
new file mode 100644
index 0000000000..8cdae6f76f
--- /dev/null
+++ b/doc/ref/c++/html/search/all_15.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['zerocopyinputstream',['ZeroCopyInputStream',['../namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4',1,'grpc::protobuf::io']]],
+ ['zerocopyoutputstream',['ZeroCopyOutputStream',['../namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1',1,'grpc::protobuf::io']]]
+];
diff --git a/doc/ref/c++/html/search/all_16.html b/doc/ref/c++/html/search/all_16.html
new file mode 100644
index 0000000000..b4e3666ffb
--- /dev/null
+++ b/doc/ref/c++/html/search/all_16.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_16.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_16.js b/doc/ref/c++/html/search/all_16.js
new file mode 100644
index 0000000000..b68eeabcfc
--- /dev/null
+++ b/doc/ref/c++/html/search/all_16.js
@@ -0,0 +1,37 @@
+var searchData=
+[
+ ['_7easynchronousservice',['~AsynchronousService',['../classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00',1,'grpc::AsynchronousService']]],
+ ['_7easyncreaderinterface',['~AsyncReaderInterface',['../classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379',1,'grpc::AsyncReaderInterface']]],
+ ['_7easyncwriterinterface',['~AsyncWriterInterface',['../classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd',1,'grpc::AsyncWriterInterface']]],
+ ['_7eauthcontext',['~AuthContext',['../classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464',1,'grpc::AuthContext']]],
+ ['_7eauthpropertyiterator',['~AuthPropertyIterator',['../classgrpc_1_1_auth_property_iterator.html#a91a3a2ce5085a948aac11d7371c13b49',1,'grpc::AuthPropertyIterator']]],
+ ['_7ebytebuffer',['~ByteBuffer',['../classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a',1,'grpc::ByteBuffer']]],
+ ['_7ecallhook',['~CallHook',['../classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d',1,'grpc::CallHook']]],
+ ['_7echannelarguments',['~ChannelArguments',['../classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad',1,'grpc::ChannelArguments']]],
+ ['_7echannelinterface',['~ChannelInterface',['../classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f',1,'grpc::ChannelInterface']]],
+ ['_7eclientasyncresponsereaderinterface',['~ClientAsyncResponseReaderInterface',['../classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0',1,'grpc::ClientAsyncResponseReaderInterface']]],
+ ['_7eclientasyncstreaminginterface',['~ClientAsyncStreamingInterface',['../classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28',1,'grpc::ClientAsyncStreamingInterface']]],
+ ['_7eclientcontext',['~ClientContext',['../classgrpc_1_1_client_context.html#aeb77ea760faf8f96e775812806c0a3d9',1,'grpc::ClientContext']]],
+ ['_7eclientstreaminginterface',['~ClientStreamingInterface',['../classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e',1,'grpc::ClientStreamingInterface']]],
+ ['_7ecompletionqueue',['~CompletionQueue',['../classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0',1,'grpc::CompletionQueue']]],
+ ['_7ecompletionqueuetag',['~CompletionQueueTag',['../classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab',1,'grpc::CompletionQueueTag']]],
+ ['_7econdition_5fvariable',['~condition_variable',['../classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca',1,'grpc::condition_variable']]],
+ ['_7ecredentials',['~Credentials',['../classgrpc_1_1_credentials.html#af4e8a65a6cee2b847e11134671c213f2',1,'grpc::Credentials']]],
+ ['_7edynamicthreadpool',['~DynamicThreadPool',['../classgrpc_1_1_dynamic_thread_pool.html#a9a81f1b15a357a8ca6cb3d7fef7a5456',1,'grpc::DynamicThreadPool']]],
+ ['_7efixedsizethreadpool',['~FixedSizeThreadPool',['../classgrpc_1_1_fixed_size_thread_pool.html#aa31a8326a490c77e0e04b6df7ac3d7f8',1,'grpc::FixedSizeThreadPool']]],
+ ['_7egrpclibrary',['~GrpcLibrary',['../classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8',1,'grpc::GrpcLibrary']]],
+ ['_7einternalstub',['~InternalStub',['../classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e',1,'grpc::InternalStub']]],
+ ['_7elock_5fguard',['~lock_guard',['../classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2',1,'grpc::lock_guard']]],
+ ['_7emethodhandler',['~MethodHandler',['../classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0',1,'grpc::MethodHandler']]],
+ ['_7emutex',['~mutex',['../classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a',1,'grpc::mutex']]],
+ ['_7ereaderinterface',['~ReaderInterface',['../classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5',1,'grpc::ReaderInterface']]],
+ ['_7eserver',['~Server',['../classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2',1,'grpc::Server']]],
+ ['_7eserverasyncstreaminginterface',['~ServerAsyncStreamingInterface',['../classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc',1,'grpc::ServerAsyncStreamingInterface']]],
+ ['_7eservercontext',['~ServerContext',['../classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6',1,'grpc::ServerContext']]],
+ ['_7eservercredentials',['~ServerCredentials',['../classgrpc_1_1_server_credentials.html#aa5df8a7a8f509a96f23ef8943a0306ff',1,'grpc::ServerCredentials']]],
+ ['_7eslice',['~Slice',['../classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94',1,'grpc::Slice']]],
+ ['_7esynchronousservice',['~SynchronousService',['../classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05',1,'grpc::SynchronousService']]],
+ ['_7ethread',['~thread',['../classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f',1,'grpc::thread']]],
+ ['_7ethreadpoolinterface',['~ThreadPoolInterface',['../classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538',1,'grpc::ThreadPoolInterface']]],
+ ['_7ewriterinterface',['~WriterInterface',['../classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75',1,'grpc::WriterInterface']]]
+];
diff --git a/doc/ref/c++/html/search/all_2.html b/doc/ref/c++/html/search/all_2.html
new file mode 100644
index 0000000000..95ded1222d
--- /dev/null
+++ b/doc/ref/c++/html/search/all_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_2.js b/doc/ref/c++/html/search/all_2.js
new file mode 100644
index 0000000000..a12992d120
--- /dev/null
+++ b/doc/ref/c++/html/search/all_2.js
@@ -0,0 +1,12 @@
+var searchData=
+[
+ ['begin',['begin',['../classgrpc_1_1_auth_context.html#a4a4a9e18e05e1a06cf25b8a77edd8c89',1,'grpc::AuthContext::begin()'],['../classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8',1,'grpc::Slice::begin()']]],
+ ['bidi_5fstreaming',['BIDI_STREAMING',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894',1,'grpc::RpcMethod']]],
+ ['bidistreaminghandler',['BidiStreamingHandler',['../classgrpc_1_1_bidi_streaming_handler.html',1,'grpc']]],
+ ['bidistreaminghandler',['BidiStreamingHandler',['../classgrpc_1_1_completion_queue.html#a9fcf1462b4ea3c6a37e54076aafb93e1',1,'grpc::CompletionQueue::BidiStreamingHandler()'],['../classgrpc_1_1_server_context.html#a9fcf1462b4ea3c6a37e54076aafb93e1',1,'grpc::ServerContext::BidiStreamingHandler()'],['../classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34',1,'grpc::BidiStreamingHandler::BidiStreamingHandler()']]],
+ ['blockingunarycall',['BlockingUnaryCall',['../classgrpc_1_1_client_context.html#a4aac0a120f3498d1151460ef89ce8446',1,'grpc::ClientContext::BlockingUnaryCall()'],['../classgrpc_1_1_completion_queue.html#a4aac0a120f3498d1151460ef89ce8446',1,'grpc::CompletionQueue::BlockingUnaryCall()'],['../namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b',1,'grpc::BlockingUnaryCall()']]],
+ ['buildandstart',['BuildAndStart',['../classgrpc_1_1_server_builder.html#af284cd39b185043e8e92405c1ae0f310',1,'grpc::ServerBuilder']]],
+ ['byte_5fbuffer_2eh',['byte_buffer.h',['../byte__buffer_8h.html',1,'']]],
+ ['bytebuffer',['ByteBuffer',['../classgrpc_1_1_byte_buffer.html',1,'grpc']]],
+ ['bytebuffer',['ByteBuffer',['../classgrpc_1_1_slice.html#ac6c83f28f4b17ae317094a794e92e99e',1,'grpc::Slice::ByteBuffer()'],['../classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b',1,'grpc::ByteBuffer::ByteBuffer()'],['../classgrpc_1_1_byte_buffer.html#aa1f69f81c3cb03c61b544a0222e83004',1,'grpc::ByteBuffer::ByteBuffer(const Slice *slices, size_t nslices)']]]
+];
diff --git a/doc/ref/c++/html/search/all_3.html b/doc/ref/c++/html/search/all_3.html
new file mode 100644
index 0000000000..4d312d03dd
--- /dev/null
+++ b/doc/ref/c++/html/search/all_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_3.js b/doc/ref/c++/html/search/all_3.js
new file mode 100644
index 0000000000..c32257f9e1
--- /dev/null
+++ b/doc/ref/c++/html/search/all_3.js
@@ -0,0 +1,114 @@
+var searchData=
+[
+ ['call',['Call',['../classgrpc_1_1_call.html',1,'grpc']]],
+ ['call',['Call',['../classgrpc_1_1_generic_stub.html#a29d999cf06468cfe12d3cdc912cb0afb',1,'grpc::GenericStub::Call()'],['../classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a',1,'grpc::Call::Call(grpc_call *call, CallHook *call_hook_, CompletionQueue *cq)'],['../classgrpc_1_1_call.html#a82dc146935bbbb535d6c4c9fb9887373',1,'grpc::Call::Call(grpc_call *call, CallHook *call_hook_, CompletionQueue *cq, int max_message_size)'],['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72',1,'grpc::MethodHandler::HandlerParameter::call()'],['../classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38',1,'grpc::Call::call()']]],
+ ['call_2eh',['call.h',['../call_8h.html',1,'']]],
+ ['callhook',['CallHook',['../classgrpc_1_1_call_hook.html',1,'grpc']]],
+ ['callnoop',['CallNoOp',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_202_20_3e',['CallNoOp&lt; 2 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_203_20_3e',['CallNoOp&lt; 3 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_204_20_3e',['CallNoOp&lt; 4 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_205_20_3e',['CallNoOp&lt; 5 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_206_20_3e',['CallNoOp&lt; 6 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callopclientrecvstatus',['CallOpClientRecvStatus',['../classgrpc_1_1_client_context.html#aa7c3f046b48d55b5a82cbee3fd84faa2',1,'grpc::ClientContext::CallOpClientRecvStatus()'],['../classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de',1,'grpc::CallOpClientRecvStatus::CallOpClientRecvStatus()']]],
+ ['callopclientrecvstatus',['CallOpClientRecvStatus',['../classgrpc_1_1_call_op_client_recv_status.html',1,'grpc']]],
+ ['callopclientsendclose',['CallOpClientSendClose',['../classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e',1,'grpc::CallOpClientSendClose']]],
+ ['callopclientsendclose',['CallOpClientSendClose',['../classgrpc_1_1_call_op_client_send_close.html',1,'grpc']]],
+ ['callopgenericrecvmessage',['CallOpGenericRecvMessage',['../classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda',1,'grpc::CallOpGenericRecvMessage']]],
+ ['callopgenericrecvmessage',['CallOpGenericRecvMessage',['../classgrpc_1_1_call_op_generic_recv_message.html',1,'grpc']]],
+ ['calloprecvinitialmetadata',['CallOpRecvInitialMetadata',['../classgrpc_1_1_client_context.html#a94ad025954d211da7d27efa58cb2ea91',1,'grpc::ClientContext::CallOpRecvInitialMetadata()'],['../classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8',1,'grpc::CallOpRecvInitialMetadata::CallOpRecvInitialMetadata()']]],
+ ['calloprecvinitialmetadata',['CallOpRecvInitialMetadata',['../classgrpc_1_1_call_op_recv_initial_metadata.html',1,'grpc']]],
+ ['calloprecvmessage',['CallOpRecvMessage',['../classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253',1,'grpc::CallOpRecvMessage']]],
+ ['calloprecvmessage',['CallOpRecvMessage',['../classgrpc_1_1_call_op_recv_message.html',1,'grpc']]],
+ ['callopsendinitialmetadata',['CallOpSendInitialMetadata',['../classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8',1,'grpc::CallOpSendInitialMetadata']]],
+ ['callopsendinitialmetadata',['CallOpSendInitialMetadata',['../classgrpc_1_1_call_op_send_initial_metadata.html',1,'grpc']]],
+ ['callopsendmessage',['CallOpSendMessage',['../classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291',1,'grpc::CallOpSendMessage']]],
+ ['callopsendmessage',['CallOpSendMessage',['../classgrpc_1_1_call_op_send_message.html',1,'grpc']]],
+ ['callopserversendstatus',['CallOpServerSendStatus',['../classgrpc_1_1_call_op_server_send_status.html',1,'grpc']]],
+ ['callopserversendstatus',['CallOpServerSendStatus',['../classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4',1,'grpc::CallOpServerSendStatus']]],
+ ['callopset',['CallOpSet',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset',['CallOpSet',['../classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf',1,'grpc::CallOpSet']]],
+ ['callopset_3c_20grpc_3a_3acallopclientsendclose_20_3e',['CallOpSet&lt; grpc::CallOpClientSendClose &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopgenericrecvmessage_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acallopgenericrecvmessage_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acalloprecvmessage_3c_20r_20_3e_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acalloprecvmessage_3c_20r_20_3e_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvmessage_3c_20r_20_3e_20_3e',['CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopclientsendclose_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopclientsendclose_2c_20callnoop_3c_204_20_3e_2c_20callnoop_3c_205_20_3e_2c_20callnoop_3c_206_20_3e_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopserversendstatus_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopserversendstatus_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendmessage_20_3e',['CallOpSet&lt; grpc::CallOpSendMessage &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopsetinterface',['CallOpSetInterface',['../classgrpc_1_1_call_op_set_interface.html',1,'grpc']]],
+ ['callopsetinterface',['CallOpSetInterface',['../classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000',1,'grpc::CallOpSetInterface']]],
+ ['cancelled',['CANCELLED',['../classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab',1,'grpc::Status::CANCELLED()'],['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2',1,'grpc::CANCELLED()']]],
+ ['census_5fcontext',['census_context',['../classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117',1,'grpc::ClientContext::census_context()'],['../classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e',1,'grpc::ServerContext::census_context()']]],
+ ['cert_5fchain',['cert_chain',['../structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e',1,'grpc::SslServerCredentialsOptions::PemKeyCertPair']]],
+ ['channel',['channel',['../classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729',1,'grpc::InternalStub::channel()'],['../classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d',1,'grpc::ClientContext::Channel()']]],
+ ['channel_5farguments_2eh',['channel_arguments.h',['../channel__arguments_8h.html',1,'']]],
+ ['channel_5finterface_2eh',['channel_interface.h',['../channel__interface_8h.html',1,'']]],
+ ['channel_5ftag',['channel_tag',['../classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3',1,'grpc::RpcMethod']]],
+ ['channelarguments',['ChannelArguments',['../classgrpc_1_1_channel_arguments.html',1,'grpc']]],
+ ['channelarguments',['ChannelArguments',['../classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb',1,'grpc::ChannelArguments::ChannelArguments()'],['../classgrpc_1_1_channel_arguments.html#ade11dfb5cac0e1da5e9ed5e86c18c4fe',1,'grpc::ChannelArguments::ChannelArguments(const ChannelArguments &amp;other)']]],
+ ['channelinterface',['ChannelInterface',['../classgrpc_1_1_channel_interface.html',1,'grpc']]],
+ ['clear',['Clear',['../classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80',1,'grpc::ByteBuffer::Clear()'],['../classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02',1,'grpc::WriteOptions::Clear()']]],
+ ['clear_5fbuffer_5fhint',['clear_buffer_hint',['../classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f',1,'grpc::WriteOptions']]],
+ ['clear_5fno_5fcompression',['clear_no_compression',['../classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7',1,'grpc::WriteOptions']]],
+ ['client_5fcontext_2eh',['client_context.h',['../client__context_8h.html',1,'']]],
+ ['client_5fmetadata',['client_metadata',['../classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1',1,'grpc::ServerContext']]],
+ ['client_5fstreaming',['CLIENT_STREAMING',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a',1,'grpc::RpcMethod']]],
+ ['client_5funary_5fcall_2eh',['client_unary_call.h',['../client__unary__call_8h.html',1,'']]],
+ ['clientasyncreader',['ClientAsyncReader',['../classgrpc_1_1_client_async_reader.html',1,'grpc']]],
+ ['clientasyncreader',['ClientAsyncReader',['../classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4',1,'grpc::ClientAsyncReader']]],
+ ['clientasyncreaderinterface',['ClientAsyncReaderInterface',['../classgrpc_1_1_client_async_reader_interface.html',1,'grpc']]],
+ ['clientasyncreaderwriter',['ClientAsyncReaderWriter',['../classgrpc_1_1_client_async_reader_writer.html',1,'grpc']]],
+ ['clientasyncreaderwriter',['ClientAsyncReaderWriter',['../classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066',1,'grpc::ClientAsyncReaderWriter']]],
+ ['clientasyncreaderwriterinterface',['ClientAsyncReaderWriterInterface',['../classgrpc_1_1_client_async_reader_writer_interface.html',1,'grpc']]],
+ ['clientasyncresponsereader',['ClientAsyncResponseReader',['../classgrpc_1_1_client_async_response_reader.html',1,'grpc']]],
+ ['clientasyncresponsereader',['ClientAsyncResponseReader',['../classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf',1,'grpc::ClientAsyncResponseReader']]],
+ ['clientasyncresponsereaderinterface',['ClientAsyncResponseReaderInterface',['../classgrpc_1_1_client_async_response_reader_interface.html',1,'grpc']]],
+ ['clientasyncstreaminginterface',['ClientAsyncStreamingInterface',['../classgrpc_1_1_client_async_streaming_interface.html',1,'grpc']]],
+ ['clientasyncwriter',['ClientAsyncWriter',['../classgrpc_1_1_client_async_writer.html',1,'grpc']]],
+ ['clientasyncwriter',['ClientAsyncWriter',['../classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6',1,'grpc::ClientAsyncWriter']]],
+ ['clientasyncwriterinterface',['ClientAsyncWriterInterface',['../classgrpc_1_1_client_async_writer_interface.html',1,'grpc']]],
+ ['clientcontext',['ClientContext',['../classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9',1,'grpc::ClientContext']]],
+ ['clientcontext',['ClientContext',['../classgrpc_1_1_client_context.html',1,'grpc']]],
+ ['clientreader',['ClientReader',['../classgrpc_1_1_client_reader.html',1,'grpc']]],
+ ['clientreader',['ClientReader',['../classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56',1,'grpc::ClientReader']]],
+ ['clientreaderinterface',['ClientReaderInterface',['../classgrpc_1_1_client_reader_interface.html',1,'grpc']]],
+ ['clientreaderwriter',['ClientReaderWriter',['../classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc',1,'grpc::ClientReaderWriter']]],
+ ['clientreaderwriter',['ClientReaderWriter',['../classgrpc_1_1_client_reader_writer.html',1,'grpc']]],
+ ['clientreaderwriterinterface',['ClientReaderWriterInterface',['../classgrpc_1_1_client_reader_writer_interface.html',1,'grpc']]],
+ ['clientrecvstatus',['ClientRecvStatus',['../classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813',1,'grpc::CallOpClientRecvStatus']]],
+ ['clientsendclose',['ClientSendClose',['../classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc',1,'grpc::CallOpClientSendClose']]],
+ ['clientstreaminghandler',['ClientStreamingHandler',['../classgrpc_1_1_client_streaming_handler.html',1,'grpc']]],
+ ['clientstreaminghandler',['ClientStreamingHandler',['../classgrpc_1_1_completion_queue.html#ae11583f8aab976055b1feae895d7e12a',1,'grpc::CompletionQueue::ClientStreamingHandler()'],['../classgrpc_1_1_server_context.html#ae11583f8aab976055b1feae895d7e12a',1,'grpc::ServerContext::ClientStreamingHandler()'],['../classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff',1,'grpc::ClientStreamingHandler::ClientStreamingHandler()']]],
+ ['clientstreaminginterface',['ClientStreamingInterface',['../classgrpc_1_1_client_streaming_interface.html',1,'grpc']]],
+ ['clientwriter',['ClientWriter',['../classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe',1,'grpc::ClientWriter']]],
+ ['clientwriter',['ClientWriter',['../classgrpc_1_1_client_writer.html',1,'grpc']]],
+ ['clientwriterinterface',['ClientWriterInterface',['../classgrpc_1_1_client_writer_interface.html',1,'grpc']]],
+ ['codedinputstream',['CodedInputStream',['../namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3',1,'grpc::protobuf::io']]],
+ ['completion_5fqueue_2eh',['completion_queue.h',['../completion__queue_8h.html',1,'']]],
+ ['completionqueue',['CompletionQueue',['../classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566',1,'grpc::CompletionQueue::CompletionQueue()'],['../classgrpc_1_1_completion_queue.html#a081a954044215a7ca8554da4220fb369',1,'grpc::CompletionQueue::CompletionQueue(grpc_completion_queue *take)']]],
+ ['completionqueue',['CompletionQueue',['../classgrpc_1_1_completion_queue.html',1,'grpc']]],
+ ['completionqueuetag',['CompletionQueueTag',['../classgrpc_1_1_completion_queue_tag.html',1,'grpc']]],
+ ['compositecredentials',['CompositeCredentials',['../classgrpc_1_1_credentials.html#a319db47fafb1868e66fd34b8bc084f3f',1,'grpc::Credentials::CompositeCredentials()'],['../namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c',1,'grpc::CompositeCredentials()']]],
+ ['compression_5falgorithm',['compression_algorithm',['../classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56',1,'grpc::ClientContext::compression_algorithm()'],['../classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171',1,'grpc::ServerContext::compression_algorithm()']]],
+ ['compression_5flevel',['compression_level',['../classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8',1,'grpc::ServerContext']]],
+ ['computeenginecredentials',['ComputeEngineCredentials',['../namespacegrpc.html#a485ca55548022e260806c32d74095c8c',1,'grpc']]],
+ ['condition_5fvariable',['condition_variable',['../classgrpc_1_1condition__variable.html',1,'grpc']]],
+ ['condition_5fvariable',['condition_variable',['../classgrpc_1_1mutex.html#a89c9b6aa2256fa5efd92a333d96381d4',1,'grpc::mutex::condition_variable()'],['../classgrpc_1_1lock__guard.html#a89c9b6aa2256fa5efd92a333d96381d4',1,'grpc::lock_guard::condition_variable()'],['../classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611',1,'grpc::condition_variable::condition_variable()']]],
+ ['config_2eh',['config.h',['../config_8h.html',1,'']]],
+ ['config_5fprotobuf_2eh',['config_protobuf.h',['../config__protobuf_8h.html',1,'']]],
+ ['cq',['cq',['../classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b',1,'grpc::CompletionQueue::cq()'],['../classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14',1,'grpc::Call::cq()']]],
+ ['create_5fchannel_2eh',['create_channel.h',['../create__channel_8h.html',1,'']]],
+ ['createcall',['CreateCall',['../classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0',1,'grpc::ChannelInterface']]],
+ ['createchannel',['CreateChannel',['../classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69',1,'grpc::Credentials::CreateChannel()'],['../namespacegrpc.html#ad56350897572898b62a33e384c5e4a59',1,'grpc::CreateChannel()']]],
+ ['createdefaultthreadpool',['CreateDefaultThreadPool',['../namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334',1,'grpc']]],
+ ['credentials',['Credentials',['../classgrpc_1_1_credentials.html',1,'grpc']]],
+ ['credentials_2eh',['credentials.h',['../credentials_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/all_4.html b/doc/ref/c++/html/search/all_4.html
new file mode 100644
index 0000000000..d72a9104cd
--- /dev/null
+++ b/doc/ref/c++/html/search/all_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_4.js b/doc/ref/c++/html/search/all_4.js
new file mode 100644
index 0000000000..fa18da1453
--- /dev/null
+++ b/doc/ref/c++/html/search/all_4.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['data_5floss',['DATA_LOSS',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688',1,'grpc']]],
+ ['deadline',['deadline',['../classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e',1,'grpc::ClientContext::deadline()'],['../classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052',1,'grpc::ServerContext::deadline()']]],
+ ['deadline_5fexceeded',['DEADLINE_EXCEEDED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628',1,'grpc']]],
+ ['deserialize',['Deserialize',['../classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5',1,'grpc::SerializationTraits&lt; ByteBuffer, void &gt;::Deserialize()'],['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb',1,'grpc::CallOpGenericRecvMessageHelper::DeserializeFunc::Deserialize()'],['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4',1,'grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType::Deserialize()'],['../classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a',1,'grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;::Deserialize()']]],
+ ['deserializefunc',['DeserializeFunc',['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html',1,'grpc::CallOpGenericRecvMessageHelper']]],
+ ['deserializefunctype',['DeserializeFuncType',['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html',1,'grpc::CallOpGenericRecvMessageHelper']]],
+ ['deserializefunctype',['DeserializeFuncType',['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316',1,'grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType']]],
+ ['deserializeproto',['DeserializeProto',['../namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f',1,'grpc']]],
+ ['do_5fnot_5fuse',['DO_NOT_USE',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234',1,'grpc']]],
+ ['dump',['Dump',['../classgrpc_1_1_byte_buffer.html#a1b284d25c0c3c594c386800c548048f1',1,'grpc::ByteBuffer']]],
+ ['dynamic_5fthread_5fpool_2eh',['dynamic_thread_pool.h',['../dynamic__thread__pool_8h.html',1,'']]],
+ ['dynamicthreadpool',['DynamicThreadPool',['../classgrpc_1_1_dynamic_thread_pool.html#af4b6567a60ddfa8551dfbddab4cb7209',1,'grpc::DynamicThreadPool']]],
+ ['dynamicthreadpool',['DynamicThreadPool',['../classgrpc_1_1_dynamic_thread_pool.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/all_5.html b/doc/ref/c++/html/search/all_5.html
new file mode 100644
index 0000000000..99ef726704
--- /dev/null
+++ b/doc/ref/c++/html/search/all_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_5.js b/doc/ref/c++/html/search/all_5.js
new file mode 100644
index 0000000000..c2ccb7f7e1
--- /dev/null
+++ b/doc/ref/c++/html/search/all_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['end',['end',['../classgrpc_1_1_auth_context.html#a81d358b427e0f1096e148918cdeef991',1,'grpc::AuthContext::end()'],['../classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60',1,'grpc::Slice::end()']]],
+ ['error_5fcode',['error_code',['../classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181',1,'grpc::Status']]],
+ ['error_5fmessage',['error_message',['../classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16',1,'grpc::Status']]]
+];
diff --git a/doc/ref/c++/html/search/all_6.html b/doc/ref/c++/html/search/all_6.html
new file mode 100644
index 0000000000..6133ab3af1
--- /dev/null
+++ b/doc/ref/c++/html/search/all_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_6.js b/doc/ref/c++/html/search/all_6.js
new file mode 100644
index 0000000000..adc2592480
--- /dev/null
+++ b/doc/ref/c++/html/search/all_6.js
@@ -0,0 +1,17 @@
+var searchData=
+[
+ ['failed_5fprecondition',['FAILED_PRECONDITION',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2',1,'grpc']]],
+ ['fillmetadataarray',['FillMetadataArray',['../namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca',1,'grpc']]],
+ ['fillmetadatamap',['FillMetadataMap',['../namespacegrpc.html#a00d2939a7b40a674459016f6148f372d',1,'grpc']]],
+ ['fillops',['FillOps',['../classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874',1,'grpc::CallOpSetInterface::FillOps()'],['../classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c',1,'grpc::CallOpSet::FillOps()']]],
+ ['finalizeresult',['FinalizeResult',['../classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d',1,'grpc::CompletionQueueTag::FinalizeResult()'],['../classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180',1,'grpc::CallOpSet::FinalizeResult()'],['../classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd',1,'grpc::SneakyCallOpSet::FinalizeResult()']]],
+ ['findpropertyvalues',['FindPropertyValues',['../classgrpc_1_1_auth_context.html#ad34c79f4934c974aa9e77ca69eed82aa',1,'grpc::AuthContext']]],
+ ['finish',['Finish',['../classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb',1,'grpc::ClientAsyncResponseReaderInterface::Finish()'],['../classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830',1,'grpc::ClientAsyncResponseReader::Finish()'],['../classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809',1,'grpc::ServerAsyncResponseWriter::Finish()'],['../classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4',1,'grpc::ClientStreamingInterface::Finish()'],['../classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df',1,'grpc::ClientReader::Finish()'],['../classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658',1,'grpc::ClientWriter::Finish()'],['../classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116',1,'grpc::ClientReaderWriter::Finish()'],['../classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24',1,'grpc::ClientAsyncStreamingInterface::Finish()'],['../classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f',1,'grpc::ClientAsyncReader::Finish()'],['../classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b',1,'grpc::ClientAsyncWriter::Finish()'],['../classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23',1,'grpc::ClientAsyncReaderWriter::Finish()'],['../classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59',1,'grpc::ServerAsyncReader::Finish()'],['../classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004',1,'grpc::ServerAsyncWriter::Finish()'],['../classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5',1,'grpc::ServerAsyncReaderWriter::Finish()']]],
+ ['finishop',['FinishOp',['../classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae',1,'grpc::CallNoOp::FinishOp()'],['../classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13',1,'grpc::CallOpSendInitialMetadata::FinishOp()'],['../classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b',1,'grpc::CallOpSendMessage::FinishOp()'],['../classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6',1,'grpc::CallOpRecvMessage::FinishOp()'],['../classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16',1,'grpc::CallOpGenericRecvMessage::FinishOp()'],['../classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656',1,'grpc::CallOpClientSendClose::FinishOp()'],['../classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978',1,'grpc::CallOpServerSendStatus::FinishOp()'],['../classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb',1,'grpc::CallOpRecvInitialMetadata::FinishOp()'],['../classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f',1,'grpc::CallOpClientRecvStatus::FinishOp()']]],
+ ['finishwitherror',['FinishWithError',['../classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93',1,'grpc::ServerAsyncResponseWriter::FinishWithError()'],['../classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb',1,'grpc::ServerAsyncReader::FinishWithError()']]],
+ ['fixed_5fsize_5fthread_5fpool_2eh',['fixed_size_thread_pool.h',['../fixed__size__thread__pool_8h.html',1,'']]],
+ ['fixedsizethreadpool',['FixedSizeThreadPool',['../classgrpc_1_1_fixed_size_thread_pool.html#a7b1d9cbdaedc89f5f4dd6e5782bfe5e0',1,'grpc::FixedSizeThreadPool']]],
+ ['fixedsizethreadpool',['FixedSizeThreadPool',['../classgrpc_1_1_fixed_size_thread_pool.html',1,'grpc']]],
+ ['flags',['flags',['../classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153',1,'grpc::WriteOptions']]],
+ ['force_5fclient_5fauth',['force_client_auth',['../structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e',1,'grpc::SslServerCredentialsOptions']]]
+];
diff --git a/doc/ref/c++/html/search/all_7.html b/doc/ref/c++/html/search/all_7.html
new file mode 100644
index 0000000000..574812594f
--- /dev/null
+++ b/doc/ref/c++/html/search/all_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_7.js b/doc/ref/c++/html/search/all_7.js
new file mode 100644
index 0000000000..bcdbd77df9
--- /dev/null
+++ b/doc/ref/c++/html/search/all_7.js
@@ -0,0 +1,36 @@
+var searchData=
+[
+ ['callopgenericrecvmessagehelper',['CallOpGenericRecvMessageHelper',['../namespacegrpc_1_1_call_op_generic_recv_message_helper.html',1,'grpc']]],
+ ['generic_5fstub_2eh',['generic_stub.h',['../generic__stub_8h.html',1,'']]],
+ ['genericclientasyncreaderwriter',['GenericClientAsyncReaderWriter',['../namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539',1,'grpc']]],
+ ['genericserverasyncreaderwriter',['GenericServerAsyncReaderWriter',['../namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a',1,'grpc']]],
+ ['genericservercontext',['GenericServerContext',['../classgrpc_1_1_generic_server_context.html',1,'grpc']]],
+ ['genericstub',['GenericStub',['../classgrpc_1_1_generic_stub.html',1,'grpc']]],
+ ['genericstub',['GenericStub',['../classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88',1,'grpc::GenericStub']]],
+ ['get_5fbuffer_5fhint',['get_buffer_hint',['../classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef',1,'grpc::WriteOptions']]],
+ ['get_5fno_5fcompression',['get_no_compression',['../classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf',1,'grpc::WriteOptions']]],
+ ['getmethod',['GetMethod',['../classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192',1,'grpc::RpcService']]],
+ ['getmethodcount',['GetMethodCount',['../classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191',1,'grpc::RpcService']]],
+ ['getpeeridentity',['GetPeerIdentity',['../classgrpc_1_1_auth_context.html#a94f653509ddd988ce8fd4f22746fead9',1,'grpc::AuthContext']]],
+ ['getpeeridentitypropertyname',['GetPeerIdentityPropertyName',['../classgrpc_1_1_auth_context.html#ad7b2e589590246b953decd05cdaa4465',1,'grpc::AuthContext']]],
+ ['getserverinitialmetadata',['GetServerInitialMetadata',['../classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15',1,'grpc::ClientContext']]],
+ ['getservertrailingmetadata',['GetServerTrailingMetadata',['../classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3',1,'grpc::ClientContext']]],
+ ['googledefaultcredentials',['GoogleDefaultCredentials',['../namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3',1,'grpc']]],
+ ['got_5fevent',['GOT_EVENT',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08',1,'grpc::CompletionQueue']]],
+ ['got_5fmessage',['got_message',['../classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57',1,'grpc::CallOpRecvMessage::got_message()'],['../classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0',1,'grpc::CallOpGenericRecvMessage::got_message()']]],
+ ['grpc',['grpc',['../namespacegrpc.html',1,'']]],
+ ['grpc_5fcustom_5fcodedinputstream',['GRPC_CUSTOM_CODEDINPUTSTREAM',['../config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fmessage',['GRPC_CUSTOM_MESSAGE',['../config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fprotobuf_5fint64',['GRPC_CUSTOM_PROTOBUF_INT64',['../config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fstring',['GRPC_CUSTOM_STRING',['../config_8h.html#af6ef913b6d13d83d79be41d007120992',1,'config.h']]],
+ ['grpc_5fcustom_5fzerocopyinputstream',['GRPC_CUSTOM_ZEROCOPYINPUTSTREAM',['../config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fzerocopyoutputstream',['GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM',['../config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8',1,'config_protobuf.h']]],
+ ['grpc_5ffinal',['GRPC_FINAL',['../config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9',1,'config.h']]],
+ ['grpc_5flibrary_2eh',['grpc_library.h',['../grpc__library_8h.html',1,'']]],
+ ['grpc_5foverride',['GRPC_OVERRIDE',['../config_8h.html#a9a884d706be26697c9c892365a3402a9',1,'config.h']]],
+ ['grpclibrary',['GrpcLibrary',['../classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528',1,'grpc::GrpcLibrary']]],
+ ['grpclibrary',['GrpcLibrary',['../classgrpc_1_1_grpc_library.html',1,'grpc']]],
+ ['io',['io',['../namespacegrpc_1_1protobuf_1_1io.html',1,'grpc::protobuf']]],
+ ['protobuf',['protobuf',['../namespacegrpc_1_1protobuf.html',1,'grpc']]],
+ ['testing',['testing',['../namespacegrpc_1_1testing.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/all_8.html b/doc/ref/c++/html/search/all_8.html
new file mode 100644
index 0000000000..0179bdd463
--- /dev/null
+++ b/doc/ref/c++/html/search/all_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_8.js b/doc/ref/c++/html/search/all_8.js
new file mode 100644
index 0000000000..8802d97e2a
--- /dev/null
+++ b/doc/ref/c++/html/search/all_8.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['handler',['handler',['../classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1',1,'grpc::RpcServiceMethod']]],
+ ['handlerparameter',['HandlerParameter',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html',1,'grpc::MethodHandler']]],
+ ['handlerparameter',['HandlerParameter',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693',1,'grpc::MethodHandler::HandlerParameter']]],
+ ['host',['host',['../classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc',1,'grpc::GenericServerContext']]]
+];
diff --git a/doc/ref/c++/html/search/all_9.html b/doc/ref/c++/html/search/all_9.html
new file mode 100644
index 0000000000..cd46d44056
--- /dev/null
+++ b/doc/ref/c++/html/search/all_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_9.js b/doc/ref/c++/html/search/all_9.js
new file mode 100644
index 0000000000..a8f49f15f4
--- /dev/null
+++ b/doc/ref/c++/html/search/all_9.js
@@ -0,0 +1,15 @@
+var searchData=
+[
+ ['iamcredentials',['IAMCredentials',['../namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96',1,'grpc']]],
+ ['initial_5fmetadata_5f',['initial_metadata_',['../classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4',1,'grpc::CallOpSendInitialMetadata']]],
+ ['initial_5fmetadata_5fcount_5f',['initial_metadata_count_',['../classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63',1,'grpc::CallOpSendInitialMetadata']]],
+ ['insecurecredentials',['InsecureCredentials',['../namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3',1,'grpc']]],
+ ['insecureservercredentials',['InsecureServerCredentials',['../namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940',1,'grpc']]],
+ ['int64',['int64',['../namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32',1,'grpc::protobuf']]],
+ ['internal',['INTERNAL',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3',1,'grpc']]],
+ ['internal_5fstub_2eh',['internal_stub.h',['../internal__stub_8h.html',1,'']]],
+ ['internalstub',['InternalStub',['../classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c',1,'grpc::InternalStub']]],
+ ['internalstub',['InternalStub',['../classgrpc_1_1_internal_stub.html',1,'grpc']]],
+ ['invalid_5fargument',['INVALID_ARGUMENT',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2',1,'grpc']]],
+ ['iscancelled',['IsCancelled',['../classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864',1,'grpc::ServerContext']]]
+];
diff --git a/doc/ref/c++/html/search/all_a.html b/doc/ref/c++/html/search/all_a.html
new file mode 100644
index 0000000000..eab655301b
--- /dev/null
+++ b/doc/ref/c++/html/search/all_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_a.js b/doc/ref/c++/html/search/all_a.js
new file mode 100644
index 0000000000..14e6845c12
--- /dev/null
+++ b/doc/ref/c++/html/search/all_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['join',['join',['../classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f',1,'grpc::thread']]]
+];
diff --git a/doc/ref/c++/html/search/all_b.html b/doc/ref/c++/html/search/all_b.html
new file mode 100644
index 0000000000..a2c161e0bd
--- /dev/null
+++ b/doc/ref/c++/html/search/all_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_b.js b/doc/ref/c++/html/search/all_b.js
new file mode 100644
index 0000000000..3e0a8ad660
--- /dev/null
+++ b/doc/ref/c++/html/search/all_b.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['length',['Length',['../classgrpc_1_1_byte_buffer.html#a9429e928982f8d94ff93a1a91032ad59',1,'grpc::ByteBuffer']]],
+ ['lock',['lock',['../classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54',1,'grpc::unique_lock']]],
+ ['lock_5fguard',['lock_guard',['../classgrpc_1_1mutex.html#a4cfa68eb2ccf47f11c725b6773ff9a5b',1,'grpc::mutex::lock_guard()'],['../classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264',1,'grpc::lock_guard::lock_guard()']]],
+ ['lock_5fguard',['lock_guard',['../classgrpc_1_1lock__guard.html',1,'grpc']]],
+ ['lock_5finternal',['lock_internal',['../classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649',1,'grpc::lock_guard']]]
+];
diff --git a/doc/ref/c++/html/search/all_c.html b/doc/ref/c++/html/search/all_c.html
new file mode 100644
index 0000000000..bdd3ee2c50
--- /dev/null
+++ b/doc/ref/c++/html/search/all_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_c.js b/doc/ref/c++/html/search/all_c.js
new file mode 100644
index 0000000000..898dc420b9
--- /dev/null
+++ b/doc/ref/c++/html/search/all_c.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['max_5fmessage_5fsize',['max_message_size',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756',1,'grpc::MethodHandler::HandlerParameter::max_message_size()'],['../classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095',1,'grpc::Call::max_message_size()']]],
+ ['max_5fmessage_5fsize_5f',['max_message_size_',['../classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf',1,'grpc::CallOpSetInterface']]],
+ ['message',['Message',['../namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c',1,'grpc::protobuf']]],
+ ['method',['method',['../classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37',1,'grpc::GenericServerContext']]],
+ ['method_5ftype',['method_type',['../classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6',1,'grpc::RpcMethod']]],
+ ['methodhandler',['MethodHandler',['../classgrpc_1_1_method_handler.html',1,'grpc']]],
+ ['mutex',['mutex',['../classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581',1,'grpc::mutex']]],
+ ['mutex',['mutex',['../classgrpc_1_1mutex.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/all_d.html b/doc/ref/c++/html/search/all_d.html
new file mode 100644
index 0000000000..d51093367e
--- /dev/null
+++ b/doc/ref/c++/html/search/all_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_d.js b/doc/ref/c++/html/search/all_d.js
new file mode 100644
index 0000000000..922e501c65
--- /dev/null
+++ b/doc/ref/c++/html/search/all_d.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['name',['name',['../classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3',1,'grpc::RpcMethod']]],
+ ['next',['Next',['../classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a',1,'grpc::CompletionQueue']]],
+ ['nextstatus',['NextStatus',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572',1,'grpc::CompletionQueue']]],
+ ['normal_5frpc',['NORMAL_RPC',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e',1,'grpc::RpcMethod']]],
+ ['not_5ffound',['NOT_FOUND',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5',1,'grpc']]],
+ ['notify_5fall',['notify_all',['../classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36',1,'grpc::condition_variable']]],
+ ['notify_5fone',['notify_one',['../classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3',1,'grpc::condition_variable']]]
+];
diff --git a/doc/ref/c++/html/search/all_e.html b/doc/ref/c++/html/search/all_e.html
new file mode 100644
index 0000000000..3cda0172ed
--- /dev/null
+++ b/doc/ref/c++/html/search/all_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_e.js b/doc/ref/c++/html/search/all_e.js
new file mode 100644
index 0000000000..0e40ab7804
--- /dev/null
+++ b/doc/ref/c++/html/search/all_e.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['ok',['OK',['../classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc',1,'grpc::Status::OK()'],['../classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc',1,'grpc::Status::ok() const '],['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65',1,'grpc::OK()']]],
+ ['operator_21_3d',['operator!=',['../classgrpc_1_1_auth_property_iterator.html#af3d2671fe70be36b2ed26a75874f2fc1',1,'grpc::AuthPropertyIterator']]],
+ ['operator_2a',['operator*',['../classgrpc_1_1_auth_property_iterator.html#a564f39b91f4168c6f660bbd3144f1f0e',1,'grpc::AuthPropertyIterator']]],
+ ['operator_2b_2b',['operator++',['../classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6',1,'grpc::AuthPropertyIterator::operator++()'],['../classgrpc_1_1_auth_property_iterator.html#a76dd5ef5047b10f889d85ce2bb33b84b',1,'grpc::AuthPropertyIterator::operator++(int)']]],
+ ['operator_3d',['operator=',['../classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be',1,'grpc::ChannelArguments::operator=()'],['../classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841',1,'grpc::WriteOptions::operator=()'],['../classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1',1,'grpc::Slice::operator=()']]],
+ ['operator_3d_3d',['operator==',['../classgrpc_1_1_auth_property_iterator.html#ab5ab6a2c9a4df2b02086513716553dee',1,'grpc::AuthPropertyIterator']]],
+ ['out_5fof_5frange',['OUT_OF_RANGE',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/all_f.html b/doc/ref/c++/html/search/all_f.html
new file mode 100644
index 0000000000..7419b0297e
--- /dev/null
+++ b/doc/ref/c++/html/search/all_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="all_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/all_f.js b/doc/ref/c++/html/search/all_f.js
new file mode 100644
index 0000000000..c28a700f91
--- /dev/null
+++ b/doc/ref/c++/html/search/all_f.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+ ['peer',['peer',['../classgrpc_1_1_client_context.html#a905d667d96613e022cd83c13dbedb4c3',1,'grpc::ClientContext::peer()'],['../classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb',1,'grpc::ServerContext::peer()']]],
+ ['pem_5fcert_5fchain',['pem_cert_chain',['../structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b',1,'grpc::SslCredentialsOptions']]],
+ ['pem_5fkey_5fcert_5fpairs',['pem_key_cert_pairs',['../structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d',1,'grpc::SslServerCredentialsOptions']]],
+ ['pem_5fprivate_5fkey',['pem_private_key',['../structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e',1,'grpc::SslCredentialsOptions']]],
+ ['pem_5froot_5fcerts',['pem_root_certs',['../structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869',1,'grpc::SslCredentialsOptions::pem_root_certs()'],['../structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74',1,'grpc::SslServerCredentialsOptions::pem_root_certs()']]],
+ ['pemkeycertpair',['PemKeyCertPair',['../structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html',1,'grpc::SslServerCredentialsOptions']]],
+ ['performops',['PerformOps',['../classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4',1,'grpc::Call']]],
+ ['performopsoncall',['PerformOpsOnCall',['../classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29',1,'grpc::CallHook']]],
+ ['permission_5fdenied',['PERMISSION_DENIED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449',1,'grpc']]],
+ ['private_5fkey',['private_key',['../structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050',1,'grpc::SslServerCredentialsOptions::PemKeyCertPair']]],
+ ['proto_5futils_2eh',['proto_utils.h',['../proto__utils_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/classes_0.html b/doc/ref/c++/html/search/classes_0.html
new file mode 100644
index 0000000000..fabdc03679
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_0.js b/doc/ref/c++/html/search/classes_0.js
new file mode 100644
index 0000000000..9cc15c048e
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_0.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['asyncgenericservice',['AsyncGenericService',['../classgrpc_1_1_async_generic_service.html',1,'grpc']]],
+ ['asynchronousservice',['AsynchronousService',['../classgrpc_1_1_asynchronous_service.html',1,'grpc']]],
+ ['asyncreaderinterface',['AsyncReaderInterface',['../classgrpc_1_1_async_reader_interface.html',1,'grpc']]],
+ ['asyncwriterinterface',['AsyncWriterInterface',['../classgrpc_1_1_async_writer_interface.html',1,'grpc']]],
+ ['authcontext',['AuthContext',['../classgrpc_1_1_auth_context.html',1,'grpc']]],
+ ['authpropertyiterator',['AuthPropertyIterator',['../classgrpc_1_1_auth_property_iterator.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_1.html b/doc/ref/c++/html/search/classes_1.html
new file mode 100644
index 0000000000..800b6ae1bf
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_1.js b/doc/ref/c++/html/search/classes_1.js
new file mode 100644
index 0000000000..be02f51276
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['bidistreaminghandler',['BidiStreamingHandler',['../classgrpc_1_1_bidi_streaming_handler.html',1,'grpc']]],
+ ['bytebuffer',['ByteBuffer',['../classgrpc_1_1_byte_buffer.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_2.html b/doc/ref/c++/html/search/classes_2.html
new file mode 100644
index 0000000000..f65d263c0c
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_2.js b/doc/ref/c++/html/search/classes_2.js
new file mode 100644
index 0000000000..dff23db6eb
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_2.js
@@ -0,0 +1,60 @@
+var searchData=
+[
+ ['call',['Call',['../classgrpc_1_1_call.html',1,'grpc']]],
+ ['callhook',['CallHook',['../classgrpc_1_1_call_hook.html',1,'grpc']]],
+ ['callnoop',['CallNoOp',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_202_20_3e',['CallNoOp&lt; 2 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_203_20_3e',['CallNoOp&lt; 3 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_204_20_3e',['CallNoOp&lt; 4 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_205_20_3e',['CallNoOp&lt; 5 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callnoop_3c_206_20_3e',['CallNoOp&lt; 6 &gt;',['../classgrpc_1_1_call_no_op.html',1,'grpc']]],
+ ['callopclientrecvstatus',['CallOpClientRecvStatus',['../classgrpc_1_1_call_op_client_recv_status.html',1,'grpc']]],
+ ['callopclientsendclose',['CallOpClientSendClose',['../classgrpc_1_1_call_op_client_send_close.html',1,'grpc']]],
+ ['callopgenericrecvmessage',['CallOpGenericRecvMessage',['../classgrpc_1_1_call_op_generic_recv_message.html',1,'grpc']]],
+ ['calloprecvinitialmetadata',['CallOpRecvInitialMetadata',['../classgrpc_1_1_call_op_recv_initial_metadata.html',1,'grpc']]],
+ ['calloprecvmessage',['CallOpRecvMessage',['../classgrpc_1_1_call_op_recv_message.html',1,'grpc']]],
+ ['callopsendinitialmetadata',['CallOpSendInitialMetadata',['../classgrpc_1_1_call_op_send_initial_metadata.html',1,'grpc']]],
+ ['callopsendmessage',['CallOpSendMessage',['../classgrpc_1_1_call_op_send_message.html',1,'grpc']]],
+ ['callopserversendstatus',['CallOpServerSendStatus',['../classgrpc_1_1_call_op_server_send_status.html',1,'grpc']]],
+ ['callopset',['CallOpSet',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopclientsendclose_20_3e',['CallOpSet&lt; grpc::CallOpClientSendClose &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopgenericrecvmessage_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acallopgenericrecvmessage_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpGenericRecvMessage, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acalloprecvmessage_3c_20r_20_3e_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt; &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvinitialmetadata_2c_20grpc_3a_3acalloprecvmessage_3c_20r_20_3e_2c_20grpc_3a_3acallopclientrecvstatus_20_3e',['CallOpSet&lt; grpc::CallOpRecvInitialMetadata, grpc::CallOpRecvMessage&lt; R &gt;, grpc::CallOpClientRecvStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acalloprecvmessage_3c_20r_20_3e_20_3e',['CallOpSet&lt; grpc::CallOpRecvMessage&lt; R &gt; &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopclientsendclose_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopclientsendclose_2c_20callnoop_3c_204_20_3e_2c_20callnoop_3c_205_20_3e_2c_20callnoop_3c_206_20_3e_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose, CallNoOp&lt; 4 &gt;, CallNoOp&lt; 5 &gt;, CallNoOp&lt; 6 &gt; &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopserversendstatus_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpServerSendStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopserversendstatus_20_3e',['CallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpServerSendStatus &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopset_3c_20grpc_3a_3acallopsendmessage_20_3e',['CallOpSet&lt; grpc::CallOpSendMessage &gt;',['../classgrpc_1_1_call_op_set.html',1,'grpc']]],
+ ['callopsetinterface',['CallOpSetInterface',['../classgrpc_1_1_call_op_set_interface.html',1,'grpc']]],
+ ['channelarguments',['ChannelArguments',['../classgrpc_1_1_channel_arguments.html',1,'grpc']]],
+ ['channelinterface',['ChannelInterface',['../classgrpc_1_1_channel_interface.html',1,'grpc']]],
+ ['clientasyncreader',['ClientAsyncReader',['../classgrpc_1_1_client_async_reader.html',1,'grpc']]],
+ ['clientasyncreaderinterface',['ClientAsyncReaderInterface',['../classgrpc_1_1_client_async_reader_interface.html',1,'grpc']]],
+ ['clientasyncreaderwriter',['ClientAsyncReaderWriter',['../classgrpc_1_1_client_async_reader_writer.html',1,'grpc']]],
+ ['clientasyncreaderwriterinterface',['ClientAsyncReaderWriterInterface',['../classgrpc_1_1_client_async_reader_writer_interface.html',1,'grpc']]],
+ ['clientasyncresponsereader',['ClientAsyncResponseReader',['../classgrpc_1_1_client_async_response_reader.html',1,'grpc']]],
+ ['clientasyncresponsereaderinterface',['ClientAsyncResponseReaderInterface',['../classgrpc_1_1_client_async_response_reader_interface.html',1,'grpc']]],
+ ['clientasyncstreaminginterface',['ClientAsyncStreamingInterface',['../classgrpc_1_1_client_async_streaming_interface.html',1,'grpc']]],
+ ['clientasyncwriter',['ClientAsyncWriter',['../classgrpc_1_1_client_async_writer.html',1,'grpc']]],
+ ['clientasyncwriterinterface',['ClientAsyncWriterInterface',['../classgrpc_1_1_client_async_writer_interface.html',1,'grpc']]],
+ ['clientcontext',['ClientContext',['../classgrpc_1_1_client_context.html',1,'grpc']]],
+ ['clientreader',['ClientReader',['../classgrpc_1_1_client_reader.html',1,'grpc']]],
+ ['clientreaderinterface',['ClientReaderInterface',['../classgrpc_1_1_client_reader_interface.html',1,'grpc']]],
+ ['clientreaderwriter',['ClientReaderWriter',['../classgrpc_1_1_client_reader_writer.html',1,'grpc']]],
+ ['clientreaderwriterinterface',['ClientReaderWriterInterface',['../classgrpc_1_1_client_reader_writer_interface.html',1,'grpc']]],
+ ['clientstreaminghandler',['ClientStreamingHandler',['../classgrpc_1_1_client_streaming_handler.html',1,'grpc']]],
+ ['clientstreaminginterface',['ClientStreamingInterface',['../classgrpc_1_1_client_streaming_interface.html',1,'grpc']]],
+ ['clientwriter',['ClientWriter',['../classgrpc_1_1_client_writer.html',1,'grpc']]],
+ ['clientwriterinterface',['ClientWriterInterface',['../classgrpc_1_1_client_writer_interface.html',1,'grpc']]],
+ ['completionqueue',['CompletionQueue',['../classgrpc_1_1_completion_queue.html',1,'grpc']]],
+ ['completionqueuetag',['CompletionQueueTag',['../classgrpc_1_1_completion_queue_tag.html',1,'grpc']]],
+ ['condition_5fvariable',['condition_variable',['../classgrpc_1_1condition__variable.html',1,'grpc']]],
+ ['credentials',['Credentials',['../classgrpc_1_1_credentials.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_3.html b/doc/ref/c++/html/search/classes_3.html
new file mode 100644
index 0000000000..927e837f11
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_3.js b/doc/ref/c++/html/search/classes_3.js
new file mode 100644
index 0000000000..8a1a922e1b
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_3.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['deserializefunc',['DeserializeFunc',['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html',1,'grpc::CallOpGenericRecvMessageHelper']]],
+ ['deserializefunctype',['DeserializeFuncType',['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html',1,'grpc::CallOpGenericRecvMessageHelper']]],
+ ['dynamicthreadpool',['DynamicThreadPool',['../classgrpc_1_1_dynamic_thread_pool.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_4.html b/doc/ref/c++/html/search/classes_4.html
new file mode 100644
index 0000000000..a447290ed6
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_4.js b/doc/ref/c++/html/search/classes_4.js
new file mode 100644
index 0000000000..9f0dd3dc9f
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['fixedsizethreadpool',['FixedSizeThreadPool',['../classgrpc_1_1_fixed_size_thread_pool.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_5.html b/doc/ref/c++/html/search/classes_5.html
new file mode 100644
index 0000000000..63484c451e
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_5.js b/doc/ref/c++/html/search/classes_5.js
new file mode 100644
index 0000000000..921d735275
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_5.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['genericservercontext',['GenericServerContext',['../classgrpc_1_1_generic_server_context.html',1,'grpc']]],
+ ['genericstub',['GenericStub',['../classgrpc_1_1_generic_stub.html',1,'grpc']]],
+ ['grpclibrary',['GrpcLibrary',['../classgrpc_1_1_grpc_library.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_6.html b/doc/ref/c++/html/search/classes_6.html
new file mode 100644
index 0000000000..f3d70354c6
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_6.js b/doc/ref/c++/html/search/classes_6.js
new file mode 100644
index 0000000000..f218202f9b
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['handlerparameter',['HandlerParameter',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html',1,'grpc::MethodHandler']]]
+];
diff --git a/doc/ref/c++/html/search/classes_7.html b/doc/ref/c++/html/search/classes_7.html
new file mode 100644
index 0000000000..9e5f5c9861
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_7.js b/doc/ref/c++/html/search/classes_7.js
new file mode 100644
index 0000000000..ab09a6d93e
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['internalstub',['InternalStub',['../classgrpc_1_1_internal_stub.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_8.html b/doc/ref/c++/html/search/classes_8.html
new file mode 100644
index 0000000000..82c35b32ef
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_8.js b/doc/ref/c++/html/search/classes_8.js
new file mode 100644
index 0000000000..0dbb8ec3cf
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_8.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['lock_5fguard',['lock_guard',['../classgrpc_1_1lock__guard.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_9.html b/doc/ref/c++/html/search/classes_9.html
new file mode 100644
index 0000000000..4e83ac829b
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_9.js b/doc/ref/c++/html/search/classes_9.js
new file mode 100644
index 0000000000..22592dafa5
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_9.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['methodhandler',['MethodHandler',['../classgrpc_1_1_method_handler.html',1,'grpc']]],
+ ['mutex',['mutex',['../classgrpc_1_1mutex.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_a.html b/doc/ref/c++/html/search/classes_a.html
new file mode 100644
index 0000000000..616feb69a2
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_a.js b/doc/ref/c++/html/search/classes_a.js
new file mode 100644
index 0000000000..03e0761f94
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['pemkeycertpair',['PemKeyCertPair',['../structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html',1,'grpc::SslServerCredentialsOptions']]]
+];
diff --git a/doc/ref/c++/html/search/classes_b.html b/doc/ref/c++/html/search/classes_b.html
new file mode 100644
index 0000000000..4461152200
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_b.js b/doc/ref/c++/html/search/classes_b.js
new file mode 100644
index 0000000000..a293bc664d
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_b.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['readerinterface',['ReaderInterface',['../classgrpc_1_1_reader_interface.html',1,'grpc']]],
+ ['rpcmethod',['RpcMethod',['../classgrpc_1_1_rpc_method.html',1,'grpc']]],
+ ['rpcmethodhandler',['RpcMethodHandler',['../classgrpc_1_1_rpc_method_handler.html',1,'grpc']]],
+ ['rpcservice',['RpcService',['../classgrpc_1_1_rpc_service.html',1,'grpc']]],
+ ['rpcservicemethod',['RpcServiceMethod',['../classgrpc_1_1_rpc_service_method.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_c.html b/doc/ref/c++/html/search/classes_c.html
new file mode 100644
index 0000000000..8f92c8632a
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_c.js b/doc/ref/c++/html/search/classes_c.js
new file mode 100644
index 0000000000..0f57ef5abb
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_c.js
@@ -0,0 +1,27 @@
+var searchData=
+[
+ ['serializationtraits',['SerializationTraits',['../classgrpc_1_1_serialization_traits.html',1,'grpc']]],
+ ['serializationtraits_3c_20bytebuffer_2c_20void_20_3e',['SerializationTraits&lt; ByteBuffer, void &gt;',['../classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html',1,'grpc']]],
+ ['serializationtraits_3c_20t_2c_20typename_20std_3a_3aenable_5fif_3c_20std_3a_3ais_5fbase_5fof_3c_20grpc_3a_3aprotobuf_3a_3amessage_2c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e',['SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;',['../classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html',1,'grpc']]],
+ ['server',['Server',['../classgrpc_1_1_server.html',1,'grpc']]],
+ ['serverasyncreader',['ServerAsyncReader',['../classgrpc_1_1_server_async_reader.html',1,'grpc']]],
+ ['serverasyncreaderwriter',['ServerAsyncReaderWriter',['../classgrpc_1_1_server_async_reader_writer.html',1,'grpc']]],
+ ['serverasyncresponsewriter',['ServerAsyncResponseWriter',['../classgrpc_1_1_server_async_response_writer.html',1,'grpc']]],
+ ['serverasyncstreaminginterface',['ServerAsyncStreamingInterface',['../classgrpc_1_1_server_async_streaming_interface.html',1,'grpc']]],
+ ['serverasyncwriter',['ServerAsyncWriter',['../classgrpc_1_1_server_async_writer.html',1,'grpc']]],
+ ['serverbuilder',['ServerBuilder',['../classgrpc_1_1_server_builder.html',1,'grpc']]],
+ ['servercompletionqueue',['ServerCompletionQueue',['../classgrpc_1_1_server_completion_queue.html',1,'grpc']]],
+ ['servercontext',['ServerContext',['../classgrpc_1_1_server_context.html',1,'grpc']]],
+ ['servercredentials',['ServerCredentials',['../classgrpc_1_1_server_credentials.html',1,'grpc']]],
+ ['serverreader',['ServerReader',['../classgrpc_1_1_server_reader.html',1,'grpc']]],
+ ['serverreaderwriter',['ServerReaderWriter',['../classgrpc_1_1_server_reader_writer.html',1,'grpc']]],
+ ['serverstreaminghandler',['ServerStreamingHandler',['../classgrpc_1_1_server_streaming_handler.html',1,'grpc']]],
+ ['serverwriter',['ServerWriter',['../classgrpc_1_1_server_writer.html',1,'grpc']]],
+ ['slice',['Slice',['../classgrpc_1_1_slice.html',1,'grpc']]],
+ ['sneakycallopset',['SneakyCallOpSet',['../classgrpc_1_1_sneaky_call_op_set.html',1,'grpc']]],
+ ['sneakycallopset_3c_20grpc_3a_3acallopsendinitialmetadata_2c_20grpc_3a_3acallopsendmessage_2c_20grpc_3a_3acallopclientsendclose_20_3e',['SneakyCallOpSet&lt; grpc::CallOpSendInitialMetadata, grpc::CallOpSendMessage, grpc::CallOpClientSendClose &gt;',['../classgrpc_1_1_sneaky_call_op_set.html',1,'grpc']]],
+ ['sslcredentialsoptions',['SslCredentialsOptions',['../structgrpc_1_1_ssl_credentials_options.html',1,'grpc']]],
+ ['sslservercredentialsoptions',['SslServerCredentialsOptions',['../structgrpc_1_1_ssl_server_credentials_options.html',1,'grpc']]],
+ ['status',['Status',['../classgrpc_1_1_status.html',1,'grpc']]],
+ ['synchronousservice',['SynchronousService',['../classgrpc_1_1_synchronous_service.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_d.html b/doc/ref/c++/html/search/classes_d.html
new file mode 100644
index 0000000000..9690cf0bac
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_d.js b/doc/ref/c++/html/search/classes_d.js
new file mode 100644
index 0000000000..d1fd4bc820
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_d.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['thread',['thread',['../classgrpc_1_1thread.html',1,'grpc']]],
+ ['threadpoolinterface',['ThreadPoolInterface',['../classgrpc_1_1_thread_pool_interface.html',1,'grpc']]],
+ ['timepoint',['TimePoint',['../classgrpc_1_1_time_point.html',1,'grpc']]],
+ ['timepoint_3c_20gpr_5ftimespec_20_3e',['TimePoint&lt; gpr_timespec &gt;',['../classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html',1,'grpc']]],
+ ['timepoint_3c_20std_3a_3achrono_3a_3asystem_5fclock_3a_3atime_5fpoint_20_3e',['TimePoint&lt; std::chrono::system_clock::time_point &gt;',['../classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_e.html b/doc/ref/c++/html/search/classes_e.html
new file mode 100644
index 0000000000..24a3ef3aba
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_e.js b/doc/ref/c++/html/search/classes_e.js
new file mode 100644
index 0000000000..71c7b99b3b
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_e.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['unique_5flock',['unique_lock',['../classgrpc_1_1unique__lock.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/classes_f.html b/doc/ref/c++/html/search/classes_f.html
new file mode 100644
index 0000000000..cee523ad6b
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="classes_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/classes_f.js b/doc/ref/c++/html/search/classes_f.js
new file mode 100644
index 0000000000..782df7c817
--- /dev/null
+++ b/doc/ref/c++/html/search/classes_f.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['writeoptions',['WriteOptions',['../classgrpc_1_1_write_options.html',1,'grpc']]],
+ ['writerinterface',['WriterInterface',['../classgrpc_1_1_writer_interface.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/close.png b/doc/ref/c++/html/search/close.png
new file mode 100644
index 0000000000..9342d3dfee
--- /dev/null
+++ b/doc/ref/c++/html/search/close.png
Binary files differ
diff --git a/doc/ref/c++/html/search/defines_0.html b/doc/ref/c++/html/search/defines_0.html
new file mode 100644
index 0000000000..c2f0b46cfb
--- /dev/null
+++ b/doc/ref/c++/html/search/defines_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="defines_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/defines_0.js b/doc/ref/c++/html/search/defines_0.js
new file mode 100644
index 0000000000..ef46b23b6b
--- /dev/null
+++ b/doc/ref/c++/html/search/defines_0.js
@@ -0,0 +1,11 @@
+var searchData=
+[
+ ['grpc_5fcustom_5fcodedinputstream',['GRPC_CUSTOM_CODEDINPUTSTREAM',['../config__protobuf_8h.html#adab2e3bf138e8ee14fc7dc7957618d2f',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fmessage',['GRPC_CUSTOM_MESSAGE',['../config__protobuf_8h.html#a9dada7a420bf3d91c428fa9699bd2ef3',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fprotobuf_5fint64',['GRPC_CUSTOM_PROTOBUF_INT64',['../config__protobuf_8h.html#a42a6e2b3f439893077e50cdaa72e98f2',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fstring',['GRPC_CUSTOM_STRING',['../config_8h.html#af6ef913b6d13d83d79be41d007120992',1,'config.h']]],
+ ['grpc_5fcustom_5fzerocopyinputstream',['GRPC_CUSTOM_ZEROCOPYINPUTSTREAM',['../config__protobuf_8h.html#a1a6610a655f8fd6d36672c729a865ca0',1,'config_protobuf.h']]],
+ ['grpc_5fcustom_5fzerocopyoutputstream',['GRPC_CUSTOM_ZEROCOPYOUTPUTSTREAM',['../config__protobuf_8h.html#a7630e432db31b2693f8c2be7d3c79ef8',1,'config_protobuf.h']]],
+ ['grpc_5ffinal',['GRPC_FINAL',['../config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9',1,'config.h']]],
+ ['grpc_5foverride',['GRPC_OVERRIDE',['../config_8h.html#a9a884d706be26697c9c892365a3402a9',1,'config.h']]]
+];
diff --git a/doc/ref/c++/html/search/enums_0.html b/doc/ref/c++/html/search/enums_0.html
new file mode 100644
index 0000000000..b4cbe1e3ca
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enums_0.js b/doc/ref/c++/html/search/enums_0.js
new file mode 100644
index 0000000000..7e7b809a18
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['addref',['AddRef',['../classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2',1,'grpc::Slice']]]
+];
diff --git a/doc/ref/c++/html/search/enums_1.html b/doc/ref/c++/html/search/enums_1.html
new file mode 100644
index 0000000000..2af2a03ec9
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enums_1.js b/doc/ref/c++/html/search/enums_1.js
new file mode 100644
index 0000000000..af4facc6cc
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['nextstatus',['NextStatus',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572',1,'grpc::CompletionQueue']]]
+];
diff --git a/doc/ref/c++/html/search/enums_2.html b/doc/ref/c++/html/search/enums_2.html
new file mode 100644
index 0000000000..f96cf0a736
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enums_2.js b/doc/ref/c++/html/search/enums_2.js
new file mode 100644
index 0000000000..9799e04f4b
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['rpctype',['RpcType',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688',1,'grpc::RpcMethod']]]
+];
diff --git a/doc/ref/c++/html/search/enums_3.html b/doc/ref/c++/html/search/enums_3.html
new file mode 100644
index 0000000000..77df324aff
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enums_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enums_3.js b/doc/ref/c++/html/search/enums_3.js
new file mode 100644
index 0000000000..3aef7f9dbc
--- /dev/null
+++ b/doc/ref/c++/html/search/enums_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['statuscode',['StatusCode',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b',1,'grpc']]],
+ ['stealref',['StealRef',['../classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a',1,'grpc::Slice']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_0.html b/doc/ref/c++/html/search/enumvalues_0.html
new file mode 100644
index 0000000000..3e00fcf61a
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_0.js b/doc/ref/c++/html/search/enumvalues_0.js
new file mode 100644
index 0000000000..1595a760a4
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_0.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['aborted',['ABORTED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c',1,'grpc']]],
+ ['add_5fref',['ADD_REF',['../classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2',1,'grpc::Slice']]],
+ ['already_5fexists',['ALREADY_EXISTS',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_1.html b/doc/ref/c++/html/search/enumvalues_1.html
new file mode 100644
index 0000000000..0e575c969a
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_1.js b/doc/ref/c++/html/search/enumvalues_1.js
new file mode 100644
index 0000000000..b49693e2a2
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['bidi_5fstreaming',['BIDI_STREAMING',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688ae482ab481fdc406d88adcdd088269894',1,'grpc::RpcMethod']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_2.html b/doc/ref/c++/html/search/enumvalues_2.html
new file mode 100644
index 0000000000..e59f4acb75
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_2.js b/doc/ref/c++/html/search/enumvalues_2.js
new file mode 100644
index 0000000000..cd81ea50c3
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_2.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['cancelled',['CANCELLED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2',1,'grpc']]],
+ ['client_5fstreaming',['CLIENT_STREAMING',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a93445bd936c37c2f089f8a9075ebcb2a',1,'grpc::RpcMethod']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_3.html b/doc/ref/c++/html/search/enumvalues_3.html
new file mode 100644
index 0000000000..0a2d754e4d
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_3.js b/doc/ref/c++/html/search/enumvalues_3.js
new file mode 100644
index 0000000000..31f375d694
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_3.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['data_5floss',['DATA_LOSS',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688',1,'grpc']]],
+ ['deadline_5fexceeded',['DEADLINE_EXCEEDED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628',1,'grpc']]],
+ ['do_5fnot_5fuse',['DO_NOT_USE',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_4.html b/doc/ref/c++/html/search/enumvalues_4.html
new file mode 100644
index 0000000000..1258082bbf
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_4.js b/doc/ref/c++/html/search/enumvalues_4.js
new file mode 100644
index 0000000000..2b0cf91706
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['failed_5fprecondition',['FAILED_PRECONDITION',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_5.html b/doc/ref/c++/html/search/enumvalues_5.html
new file mode 100644
index 0000000000..e42d495996
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_5.js b/doc/ref/c++/html/search/enumvalues_5.js
new file mode 100644
index 0000000000..10390f9de8
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['got_5fevent',['GOT_EVENT',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d8344849fb99341b7edaa9da7b42c08',1,'grpc::CompletionQueue']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_6.html b/doc/ref/c++/html/search/enumvalues_6.html
new file mode 100644
index 0000000000..96249ec49e
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_6.js b/doc/ref/c++/html/search/enumvalues_6.js
new file mode 100644
index 0000000000..96a196818d
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_6.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['internal',['INTERNAL',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3',1,'grpc']]],
+ ['invalid_5fargument',['INVALID_ARGUMENT',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_7.html b/doc/ref/c++/html/search/enumvalues_7.html
new file mode 100644
index 0000000000..d38c296a1c
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_7.js b/doc/ref/c++/html/search/enumvalues_7.js
new file mode 100644
index 0000000000..950b3d878f
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_7.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['normal_5frpc',['NORMAL_RPC',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a8f7dac3c5cdbdbb204e3d3dbab033c2e',1,'grpc::RpcMethod']]],
+ ['not_5ffound',['NOT_FOUND',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_8.html b/doc/ref/c++/html/search/enumvalues_8.html
new file mode 100644
index 0000000000..9966e4688c
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_8.js b/doc/ref/c++/html/search/enumvalues_8.js
new file mode 100644
index 0000000000..82f4afa6bd
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_8.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['ok',['OK',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65',1,'grpc']]],
+ ['out_5fof_5frange',['OUT_OF_RANGE',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_9.html b/doc/ref/c++/html/search/enumvalues_9.html
new file mode 100644
index 0000000000..926ed9f2ec
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_9.js b/doc/ref/c++/html/search/enumvalues_9.js
new file mode 100644
index 0000000000..f595bbb03c
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['permission_5fdenied',['PERMISSION_DENIED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_a.html b/doc/ref/c++/html/search/enumvalues_a.html
new file mode 100644
index 0000000000..fa2cf426b2
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_a.js b/doc/ref/c++/html/search/enumvalues_a.js
new file mode 100644
index 0000000000..7836a4f2c7
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_a.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['resource_5fexhausted',['RESOURCE_EXHAUSTED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_b.html b/doc/ref/c++/html/search/enumvalues_b.html
new file mode 100644
index 0000000000..f45e84c9bb
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_b.js b/doc/ref/c++/html/search/enumvalues_b.js
new file mode 100644
index 0000000000..786ebe30f8
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_b.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['server_5fstreaming',['SERVER_STREAMING',['../classgrpc_1_1_rpc_method.html#ace95416ed07409e43059a0dfe9e23688a86f700048be78a1204139f70912f7775',1,'grpc::RpcMethod']]],
+ ['shutdown',['SHUTDOWN',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572a5d05c1c970154dad10e5f648890c215b',1,'grpc::CompletionQueue']]],
+ ['steal_5fref',['STEAL_REF',['../classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7',1,'grpc::Slice']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_c.html b/doc/ref/c++/html/search/enumvalues_c.html
new file mode 100644
index 0000000000..6ad81ca5dd
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_c.js b/doc/ref/c++/html/search/enumvalues_c.js
new file mode 100644
index 0000000000..827d08ef08
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_c.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['timeout',['TIMEOUT',['../classgrpc_1_1_completion_queue.html#a6227657fb2f29291f80cd092f9baf572ae88eecb45f91413b425511ee973e2e04',1,'grpc::CompletionQueue']]]
+];
diff --git a/doc/ref/c++/html/search/enumvalues_d.html b/doc/ref/c++/html/search/enumvalues_d.html
new file mode 100644
index 0000000000..526907ab4d
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="enumvalues_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/enumvalues_d.js b/doc/ref/c++/html/search/enumvalues_d.js
new file mode 100644
index 0000000000..0fbd3f597e
--- /dev/null
+++ b/doc/ref/c++/html/search/enumvalues_d.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['unauthenticated',['UNAUTHENTICATED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e',1,'grpc']]],
+ ['unavailable',['UNAVAILABLE',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3',1,'grpc']]],
+ ['unimplemented',['UNIMPLEMENTED',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b',1,'grpc']]],
+ ['unknown',['UNKNOWN',['../namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/files_0.html b/doc/ref/c++/html/search/files_0.html
new file mode 100644
index 0000000000..c7aa36c96f
--- /dev/null
+++ b/doc/ref/c++/html/search/files_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_0.js b/doc/ref/c++/html/search/files_0.js
new file mode 100644
index 0000000000..bfaa9710be
--- /dev/null
+++ b/doc/ref/c++/html/search/files_0.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['async_5fgeneric_5fservice_2eh',['async_generic_service.h',['../async__generic__service_8h.html',1,'']]],
+ ['async_5funary_5fcall_2eh',['async_unary_call.h',['../async__unary__call_8h.html',1,'']]],
+ ['auth_5fcontext_2eh',['auth_context.h',['../auth__context_8h.html',1,'']]],
+ ['auth_5fproperty_5fiterator_2eh',['auth_property_iterator.h',['../auth__property__iterator_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_1.html b/doc/ref/c++/html/search/files_1.html
new file mode 100644
index 0000000000..eca1c80542
--- /dev/null
+++ b/doc/ref/c++/html/search/files_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_1.js b/doc/ref/c++/html/search/files_1.js
new file mode 100644
index 0000000000..bf24ec0da5
--- /dev/null
+++ b/doc/ref/c++/html/search/files_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['byte_5fbuffer_2eh',['byte_buffer.h',['../byte__buffer_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_2.html b/doc/ref/c++/html/search/files_2.html
new file mode 100644
index 0000000000..04a8a46342
--- /dev/null
+++ b/doc/ref/c++/html/search/files_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_2.js b/doc/ref/c++/html/search/files_2.js
new file mode 100644
index 0000000000..845b7ef7bd
--- /dev/null
+++ b/doc/ref/c++/html/search/files_2.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+ ['call_2eh',['call.h',['../call_8h.html',1,'']]],
+ ['channel_5farguments_2eh',['channel_arguments.h',['../channel__arguments_8h.html',1,'']]],
+ ['channel_5finterface_2eh',['channel_interface.h',['../channel__interface_8h.html',1,'']]],
+ ['client_5fcontext_2eh',['client_context.h',['../client__context_8h.html',1,'']]],
+ ['client_5funary_5fcall_2eh',['client_unary_call.h',['../client__unary__call_8h.html',1,'']]],
+ ['completion_5fqueue_2eh',['completion_queue.h',['../completion__queue_8h.html',1,'']]],
+ ['config_2eh',['config.h',['../config_8h.html',1,'']]],
+ ['config_5fprotobuf_2eh',['config_protobuf.h',['../config__protobuf_8h.html',1,'']]],
+ ['create_5fchannel_2eh',['create_channel.h',['../create__channel_8h.html',1,'']]],
+ ['credentials_2eh',['credentials.h',['../credentials_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_3.html b/doc/ref/c++/html/search/files_3.html
new file mode 100644
index 0000000000..0dc9a561e5
--- /dev/null
+++ b/doc/ref/c++/html/search/files_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_3.js b/doc/ref/c++/html/search/files_3.js
new file mode 100644
index 0000000000..55f82ad328
--- /dev/null
+++ b/doc/ref/c++/html/search/files_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['dynamic_5fthread_5fpool_2eh',['dynamic_thread_pool.h',['../dynamic__thread__pool_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_4.html b/doc/ref/c++/html/search/files_4.html
new file mode 100644
index 0000000000..891b5da340
--- /dev/null
+++ b/doc/ref/c++/html/search/files_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_4.js b/doc/ref/c++/html/search/files_4.js
new file mode 100644
index 0000000000..bef2c2edf2
--- /dev/null
+++ b/doc/ref/c++/html/search/files_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['fixed_5fsize_5fthread_5fpool_2eh',['fixed_size_thread_pool.h',['../fixed__size__thread__pool_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_5.html b/doc/ref/c++/html/search/files_5.html
new file mode 100644
index 0000000000..1741195c0f
--- /dev/null
+++ b/doc/ref/c++/html/search/files_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_5.js b/doc/ref/c++/html/search/files_5.js
new file mode 100644
index 0000000000..777ac84d2b
--- /dev/null
+++ b/doc/ref/c++/html/search/files_5.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['generic_5fstub_2eh',['generic_stub.h',['../generic__stub_8h.html',1,'']]],
+ ['grpc_5flibrary_2eh',['grpc_library.h',['../grpc__library_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_6.html b/doc/ref/c++/html/search/files_6.html
new file mode 100644
index 0000000000..262d3da249
--- /dev/null
+++ b/doc/ref/c++/html/search/files_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_6.js b/doc/ref/c++/html/search/files_6.js
new file mode 100644
index 0000000000..5daed0429a
--- /dev/null
+++ b/doc/ref/c++/html/search/files_6.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['internal_5fstub_2eh',['internal_stub.h',['../internal__stub_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_7.html b/doc/ref/c++/html/search/files_7.html
new file mode 100644
index 0000000000..c5355726df
--- /dev/null
+++ b/doc/ref/c++/html/search/files_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_7.js b/doc/ref/c++/html/search/files_7.js
new file mode 100644
index 0000000000..80b138147c
--- /dev/null
+++ b/doc/ref/c++/html/search/files_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['proto_5futils_2eh',['proto_utils.h',['../proto__utils_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_8.html b/doc/ref/c++/html/search/files_8.html
new file mode 100644
index 0000000000..21c328afad
--- /dev/null
+++ b/doc/ref/c++/html/search/files_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_8.js b/doc/ref/c++/html/search/files_8.js
new file mode 100644
index 0000000000..71fffb72b1
--- /dev/null
+++ b/doc/ref/c++/html/search/files_8.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['rpc_5fmethod_2eh',['rpc_method.h',['../rpc__method_8h.html',1,'']]],
+ ['rpc_5fservice_5fmethod_2eh',['rpc_service_method.h',['../rpc__service__method_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_9.html b/doc/ref/c++/html/search/files_9.html
new file mode 100644
index 0000000000..00a520120c
--- /dev/null
+++ b/doc/ref/c++/html/search/files_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_9.js b/doc/ref/c++/html/search/files_9.js
new file mode 100644
index 0000000000..d1841de811
--- /dev/null
+++ b/doc/ref/c++/html/search/files_9.js
@@ -0,0 +1,16 @@
+var searchData=
+[
+ ['serialization_5ftraits_2eh',['serialization_traits.h',['../serialization__traits_8h.html',1,'']]],
+ ['server_2eh',['server.h',['../server_8h.html',1,'']]],
+ ['server_5fbuilder_2eh',['server_builder.h',['../server__builder_8h.html',1,'']]],
+ ['server_5fcontext_2eh',['server_context.h',['../server__context_8h.html',1,'']]],
+ ['server_5fcredentials_2eh',['server_credentials.h',['../server__credentials_8h.html',1,'']]],
+ ['service_5ftype_2eh',['service_type.h',['../service__type_8h.html',1,'']]],
+ ['slice_2eh',['slice.h',['../slice_8h.html',1,'']]],
+ ['status_2eh',['status.h',['../status_8h.html',1,'']]],
+ ['status_5fcode_5fenum_2eh',['status_code_enum.h',['../status__code__enum_8h.html',1,'']]],
+ ['stream_2eh',['stream.h',['../stream_8h.html',1,'']]],
+ ['sync_2eh',['sync.h',['../sync_8h.html',1,'']]],
+ ['sync_5fcxx11_2eh',['sync_cxx11.h',['../sync__cxx11_8h.html',1,'']]],
+ ['sync_5fno_5fcxx11_2eh',['sync_no_cxx11.h',['../sync__no__cxx11_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/files_a.html b/doc/ref/c++/html/search/files_a.html
new file mode 100644
index 0000000000..ab047558cc
--- /dev/null
+++ b/doc/ref/c++/html/search/files_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="files_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/files_a.js b/doc/ref/c++/html/search/files_a.js
new file mode 100644
index 0000000000..e1dee6f6dc
--- /dev/null
+++ b/doc/ref/c++/html/search/files_a.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['thd_2eh',['thd.h',['../thd_8h.html',1,'']]],
+ ['thd_5fcxx11_2eh',['thd_cxx11.h',['../thd__cxx11_8h.html',1,'']]],
+ ['thd_5fno_5fcxx11_2eh',['thd_no_cxx11.h',['../thd__no__cxx11_8h.html',1,'']]],
+ ['thread_5fpool_5finterface_2eh',['thread_pool_interface.h',['../thread__pool__interface_8h.html',1,'']]],
+ ['time_2eh',['time.h',['../time_8h.html',1,'']]]
+];
diff --git a/doc/ref/c++/html/search/functions_0.html b/doc/ref/c++/html/search/functions_0.html
new file mode 100644
index 0000000000..16a5a527a8
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_0.js b/doc/ref/c++/html/search/functions_0.js
new file mode 100644
index 0000000000..c56448c752
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_0.js
@@ -0,0 +1,19 @@
+var searchData=
+[
+ ['accesstokencredentials',['AccessTokenCredentials',['../namespacegrpc.html#a2a08189bab0ce54afb01754bd92ebd7f',1,'grpc']]],
+ ['add',['Add',['../classgrpc_1_1_dynamic_thread_pool.html#aea1cdc7989a2d6ab8fb1906428dbea30',1,'grpc::DynamicThreadPool::Add()'],['../classgrpc_1_1_fixed_size_thread_pool.html#ad7ee348722d8d120720032fae96d3026',1,'grpc::FixedSizeThreadPool::Add()'],['../classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce',1,'grpc::ThreadPoolInterface::Add()']]],
+ ['addcompletionqueue',['AddCompletionQueue',['../classgrpc_1_1_server_builder.html#accbbd95080ca974e84fa1d4cb2ea9518',1,'grpc::ServerBuilder']]],
+ ['addinitialmetadata',['AddInitialMetadata',['../classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f',1,'grpc::ServerContext']]],
+ ['addlisteningport',['AddListeningPort',['../classgrpc_1_1_server_builder.html#a256e035e62b43cd79137abf7c066902a',1,'grpc::ServerBuilder']]],
+ ['addmetadata',['AddMetadata',['../classgrpc_1_1_client_context.html#a69a026f073ef5934697568d689440bd4',1,'grpc::ClientContext']]],
+ ['addmethod',['AddMethod',['../classgrpc_1_1_rpc_service.html#af2c7369056129ef2e6fde87f040ba578',1,'grpc::RpcService']]],
+ ['addop',['AddOp',['../classgrpc_1_1_call_no_op.html#a72c69197fb8ad18542e459bffbd8cbd8',1,'grpc::CallNoOp::AddOp()'],['../classgrpc_1_1_call_op_send_initial_metadata.html#ac57cf7a43da437b8b4556839f0403a77',1,'grpc::CallOpSendInitialMetadata::AddOp()'],['../classgrpc_1_1_call_op_send_message.html#a5d19fd3ab26c2b54868c9006f374728e',1,'grpc::CallOpSendMessage::AddOp()'],['../classgrpc_1_1_call_op_recv_message.html#a2d939fbfc75732244f389a5e2b97ab0a',1,'grpc::CallOpRecvMessage::AddOp()'],['../classgrpc_1_1_call_op_generic_recv_message.html#ac95faf8549212febce73cf6301238dfc',1,'grpc::CallOpGenericRecvMessage::AddOp()'],['../classgrpc_1_1_call_op_client_send_close.html#a4415b250cd6d5a82818ba159c272343a',1,'grpc::CallOpClientSendClose::AddOp()'],['../classgrpc_1_1_call_op_server_send_status.html#a7381b06ae0268853ebf9ed3b2737698b',1,'grpc::CallOpServerSendStatus::AddOp()'],['../classgrpc_1_1_call_op_recv_initial_metadata.html#a4f1684c4b023b4e2d348e53f80797f74',1,'grpc::CallOpRecvInitialMetadata::AddOp()'],['../classgrpc_1_1_call_op_client_recv_status.html#a12467c52794548c0022256c153ed7e62',1,'grpc::CallOpClientRecvStatus::AddOp()']]],
+ ['addtrailingmetadata',['AddTrailingMetadata',['../classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c',1,'grpc::ServerContext']]],
+ ['applytocall',['ApplyToCall',['../classgrpc_1_1_credentials.html#a2b3162e0dbb4530ac1c4b81a0339b1e1',1,'grpc::Credentials']]],
+ ['assecurecredentials',['AsSecureCredentials',['../classgrpc_1_1_credentials.html#aefc960d2b52b15f2561946e0f840874f',1,'grpc::Credentials']]],
+ ['asyncgenericservice',['AsyncGenericService',['../classgrpc_1_1_async_generic_service.html#a60e3bd7ac8673ed0b49b1260a91518ae',1,'grpc::AsyncGenericService']]],
+ ['asynchronousservice',['AsynchronousService',['../classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b',1,'grpc::AsynchronousService']]],
+ ['asyncnext',['AsyncNext',['../classgrpc_1_1_completion_queue.html#a290ddf3d96e6d1d5886580e60b0602b4',1,'grpc::CompletionQueue']]],
+ ['auth_5fcontext',['auth_context',['../classgrpc_1_1_client_context.html#a02f279bf74e26d7c32d0b18dc73dccea',1,'grpc::ClientContext::auth_context()'],['../classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e',1,'grpc::ServerContext::auth_context()']]],
+ ['authpropertyiterator',['AuthPropertyIterator',['../classgrpc_1_1_auth_property_iterator.html#a2885e02ba1b9caad818a1bcdf648d949',1,'grpc::AuthPropertyIterator::AuthPropertyIterator()'],['../classgrpc_1_1_auth_property_iterator.html#aee44bb7255a99611cf490532b7e110d5',1,'grpc::AuthPropertyIterator::AuthPropertyIterator(const grpc_auth_property *property, const grpc_auth_property_iterator *iter)']]]
+];
diff --git a/doc/ref/c++/html/search/functions_1.html b/doc/ref/c++/html/search/functions_1.html
new file mode 100644
index 0000000000..3b4eacfebf
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_1.js b/doc/ref/c++/html/search/functions_1.js
new file mode 100644
index 0000000000..6ee652e372
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_1.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['begin',['begin',['../classgrpc_1_1_auth_context.html#a4a4a9e18e05e1a06cf25b8a77edd8c89',1,'grpc::AuthContext::begin()'],['../classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8',1,'grpc::Slice::begin()']]],
+ ['bidistreaminghandler',['BidiStreamingHandler',['../classgrpc_1_1_bidi_streaming_handler.html#a341a08e8b6bab7dfd8debe0ed0178b34',1,'grpc::BidiStreamingHandler']]],
+ ['blockingunarycall',['BlockingUnaryCall',['../namespacegrpc.html#a35d5687ea2da09f9376f2caa42a1db1b',1,'grpc']]],
+ ['buildandstart',['BuildAndStart',['../classgrpc_1_1_server_builder.html#af284cd39b185043e8e92405c1ae0f310',1,'grpc::ServerBuilder']]],
+ ['bytebuffer',['ByteBuffer',['../classgrpc_1_1_byte_buffer.html#aa3037355cbd37dce99c97e5c3700a76b',1,'grpc::ByteBuffer::ByteBuffer()'],['../classgrpc_1_1_byte_buffer.html#aa1f69f81c3cb03c61b544a0222e83004',1,'grpc::ByteBuffer::ByteBuffer(const Slice *slices, size_t nslices)']]]
+];
diff --git a/doc/ref/c++/html/search/functions_10.html b/doc/ref/c++/html/search/functions_10.html
new file mode 100644
index 0000000000..52cb0d3c43
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_10.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_10.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_10.js b/doc/ref/c++/html/search/functions_10.js
new file mode 100644
index 0000000000..8ae368afec
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_10.js
@@ -0,0 +1,46 @@
+var searchData=
+[
+ ['sendinitialmetadata',['SendInitialMetadata',['../classgrpc_1_1_server_async_response_writer.html#a76be68485a36629af40560aa1f1de0b7',1,'grpc::ServerAsyncResponseWriter::SendInitialMetadata()'],['../classgrpc_1_1_call_op_send_initial_metadata.html#a1d7682714b83f3bf495be8a7804fd34d',1,'grpc::CallOpSendInitialMetadata::SendInitialMetadata()'],['../classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c',1,'grpc::ServerAsyncStreamingInterface::SendInitialMetadata()'],['../classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b',1,'grpc::ServerReader::SendInitialMetadata()'],['../classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274',1,'grpc::ServerWriter::SendInitialMetadata()'],['../classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5',1,'grpc::ServerReaderWriter::SendInitialMetadata()'],['../classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6',1,'grpc::ServerAsyncReader::SendInitialMetadata()'],['../classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455',1,'grpc::ServerAsyncWriter::SendInitialMetadata()'],['../classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533',1,'grpc::ServerAsyncReaderWriter::SendInitialMetadata()']]],
+ ['sendmessage',['SendMessage',['../classgrpc_1_1_call_op_send_message.html#a3cf3a795e98b7db1488ba6c098ac7dd9',1,'grpc::CallOpSendMessage::SendMessage(const M &amp;message, const WriteOptions &amp;options) GRPC_MUST_USE_RESULT'],['../classgrpc_1_1_call_op_send_message.html#ad9928eeba69f23f54d1c378517a15222',1,'grpc::CallOpSendMessage::SendMessage(const M &amp;message) GRPC_MUST_USE_RESULT']]],
+ ['serialize',['Serialize',['../classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#a142e6455c0e040332f57bd3a35eebd33',1,'grpc::SerializationTraits&lt; ByteBuffer, void &gt;::Serialize()'],['../classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#adeebcdc9be666be418d94c021179762c',1,'grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;::Serialize()']]],
+ ['serializeproto',['SerializeProto',['../namespacegrpc.html#a453a85937625eaa278403fd7e33cd7bb',1,'grpc']]],
+ ['serverasyncreader',['ServerAsyncReader',['../classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e',1,'grpc::ServerAsyncReader']]],
+ ['serverasyncreaderwriter',['ServerAsyncReaderWriter',['../classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef',1,'grpc::ServerAsyncReaderWriter']]],
+ ['serverasyncresponsewriter',['ServerAsyncResponseWriter',['../classgrpc_1_1_server_async_response_writer.html#a3c97a19ba6eaa0b9eef9b6b86dbad9e9',1,'grpc::ServerAsyncResponseWriter']]],
+ ['serverasyncwriter',['ServerAsyncWriter',['../classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2',1,'grpc::ServerAsyncWriter']]],
+ ['serverbuilder',['ServerBuilder',['../classgrpc_1_1_server_builder.html#a208346e343cd01351492f0cace59b242',1,'grpc::ServerBuilder']]],
+ ['servercontext',['ServerContext',['../classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff',1,'grpc::ServerContext']]],
+ ['serverreader',['ServerReader',['../classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521',1,'grpc::ServerReader']]],
+ ['serverreaderwriter',['ServerReaderWriter',['../classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52',1,'grpc::ServerReaderWriter']]],
+ ['serversendstatus',['ServerSendStatus',['../classgrpc_1_1_call_op_server_send_status.html#ac2720fa707f1fe321afdf3a971bebcf7',1,'grpc::CallOpServerSendStatus']]],
+ ['serverstreaminghandler',['ServerStreamingHandler',['../classgrpc_1_1_server_streaming_handler.html#af846a2bd80177f74bca1007597fbd2a5',1,'grpc::ServerStreamingHandler']]],
+ ['serverwriter',['ServerWriter',['../classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2',1,'grpc::ServerWriter']]],
+ ['service',['service',['../classgrpc_1_1_synchronous_service.html#ad9eb51c9dc0cedfd838c23db47349796',1,'grpc::SynchronousService']]],
+ ['serviceaccountcredentials',['ServiceAccountCredentials',['../namespacegrpc.html#af2624b99e948624865a346311a613848',1,'grpc']]],
+ ['serviceaccountjwtaccesscredentials',['ServiceAccountJWTAccessCredentials',['../namespacegrpc.html#a5802d0b8e29f4937281c57bbe07f3517',1,'grpc']]],
+ ['set_5fauthority',['set_authority',['../classgrpc_1_1_client_context.html#a43bb17bbd6ab49face3793e8883c5682',1,'grpc::ClientContext']]],
+ ['set_5fbuffer_5fhint',['set_buffer_hint',['../classgrpc_1_1_write_options.html#aecd282a8c7424e4b0c1a5f512c44b8a8',1,'grpc::WriteOptions']]],
+ ['set_5fcensus_5fcontext',['set_census_context',['../classgrpc_1_1_client_context.html#a48672c1e42084d2cd6975746b84658dd',1,'grpc::ClientContext']]],
+ ['set_5fcompression_5falgorithm',['set_compression_algorithm',['../classgrpc_1_1_client_context.html#a67a71b32afe1d71189aa3a24146ec61d',1,'grpc::ClientContext::set_compression_algorithm()'],['../classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72',1,'grpc::ServerContext::set_compression_algorithm()']]],
+ ['set_5fcompression_5flevel',['set_compression_level',['../classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d',1,'grpc::ServerContext']]],
+ ['set_5fcredentials',['set_credentials',['../classgrpc_1_1_client_context.html#ac09d9bcb018a58c970adbab7ecd201cb',1,'grpc::ClientContext']]],
+ ['set_5fdeadline',['set_deadline',['../classgrpc_1_1_client_context.html#ad4e16866fee3f6ee5a10efb5be6f4da6',1,'grpc::ClientContext']]],
+ ['set_5fmax_5fmessage_5fsize',['set_max_message_size',['../classgrpc_1_1_call_op_set_interface.html#ac1e3a95ce9a1727011b7e7ce76829f0a',1,'grpc::CallOpSetInterface']]],
+ ['set_5fno_5fcompression',['set_no_compression',['../classgrpc_1_1_write_options.html#afe5f12d1bf9ed01b7a833458dc889b66',1,'grpc::WriteOptions']]],
+ ['set_5foutput_5ftag',['set_output_tag',['../classgrpc_1_1_call_op_set.html#a798d253af317730a5b996a4a55d86274',1,'grpc::CallOpSet']]],
+ ['setchannelargs',['SetChannelArgs',['../classgrpc_1_1_channel_arguments.html#a90ce1857947d36ff894402ad10cb6048',1,'grpc::ChannelArguments']]],
+ ['setcompressionalgorithm',['SetCompressionAlgorithm',['../classgrpc_1_1_channel_arguments.html#aaf332071bbdff5e4a7f3352f4ad564d5',1,'grpc::ChannelArguments']]],
+ ['setint',['SetInt',['../classgrpc_1_1_channel_arguments.html#a2b1c60568a4906bfe0b21781b09cdbbf',1,'grpc::ChannelArguments']]],
+ ['setmaxmessagesize',['SetMaxMessageSize',['../classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9',1,'grpc::ServerBuilder']]],
+ ['setssltargetnameoverride',['SetSslTargetNameOverride',['../classgrpc_1_1_channel_arguments.html#af4182e659448184f9618f079a1570328',1,'grpc::ChannelArguments']]],
+ ['setstring',['SetString',['../classgrpc_1_1_channel_arguments.html#a852ac2fe0ac7421fa82927ddda612947',1,'grpc::ChannelArguments']]],
+ ['setthreadpool',['SetThreadPool',['../classgrpc_1_1_server_builder.html#aea5dd313149029114c60571e5ee8b4cd',1,'grpc::ServerBuilder']]],
+ ['shutdown',['Shutdown',['../classgrpc_1_1_completion_queue.html#a40efddadd9073386fbcb4f46e8325670',1,'grpc::CompletionQueue::Shutdown()'],['../classgrpc_1_1_server.html#a777a9c8873ae4969585083e0e62482dc',1,'grpc::Server::Shutdown()']]],
+ ['size',['size',['../classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724',1,'grpc::Slice']]],
+ ['slice',['Slice',['../classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f',1,'grpc::Slice::Slice()'],['../classgrpc_1_1_slice.html#a0cf5718377c0ae4584d58bb6c1b042f2',1,'grpc::Slice::Slice(gpr_slice slice, AddRef)'],['../classgrpc_1_1_slice.html#ad952f787620a1fe4c519e53e9e1aa921',1,'grpc::Slice::Slice(gpr_slice slice, StealRef)'],['../classgrpc_1_1_slice.html#a0a6b936d72f7ae35f083d003d3e0c8a3',1,'grpc::Slice::Slice(const Slice &amp;other)']]],
+ ['sslcredentials',['SslCredentials',['../namespacegrpc.html#adeb675883da0c9ad8ae4dd38214c3f16',1,'grpc']]],
+ ['sslservercredentials',['SslServerCredentials',['../namespacegrpc.html#adf4e07954696095e27c0181691a1f752',1,'grpc']]],
+ ['sslservercredentialsoptions',['SslServerCredentialsOptions',['../structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105',1,'grpc::SslServerCredentialsOptions']]],
+ ['status',['Status',['../classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c',1,'grpc::Status::Status()'],['../classgrpc_1_1_status.html#a8419a0b716f961c8d2d781c65f03def6',1,'grpc::Status::Status(StatusCode code, const grpc::string &amp;details)']]],
+ ['swap',['Swap',['../classgrpc_1_1_channel_arguments.html#a3ff4f22c2cf31c01885b2aaefbdd227d',1,'grpc::ChannelArguments']]]
+];
diff --git a/doc/ref/c++/html/search/functions_11.html b/doc/ref/c++/html/search/functions_11.html
new file mode 100644
index 0000000000..5e91b098a9
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_11.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_11.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_11.js b/doc/ref/c++/html/search/functions_11.js
new file mode 100644
index 0000000000..c5c4e0443c
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_11.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['thread',['thread',['../classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269',1,'grpc::thread']]],
+ ['timepoint',['TimePoint',['../classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad',1,'grpc::TimePoint::TimePoint()'],['../classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007',1,'grpc::TimePoint&lt; gpr_timespec &gt;::TimePoint()'],['../classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f',1,'grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;::TimePoint()']]],
+ ['timepoint2timespec',['Timepoint2Timespec',['../namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c',1,'grpc']]],
+ ['timepointhr2timespec',['TimepointHR2Timespec',['../namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369',1,'grpc']]],
+ ['timespec2timepoint',['Timespec2Timepoint',['../namespacegrpc.html#a12896f279762d0100669da708d466ec1',1,'grpc']]],
+ ['trycancel',['TryCancel',['../classgrpc_1_1_client_context.html#abd0f6715c30287b75288015eee628984',1,'grpc::ClientContext']]]
+];
diff --git a/doc/ref/c++/html/search/functions_12.html b/doc/ref/c++/html/search/functions_12.html
new file mode 100644
index 0000000000..1ab0742ba6
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_12.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_12.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_12.js b/doc/ref/c++/html/search/functions_12.js
new file mode 100644
index 0000000000..2850e1cacc
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_12.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['unique_5flock',['unique_lock',['../classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633',1,'grpc::unique_lock']]],
+ ['unlock',['unlock',['../classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd',1,'grpc::unique_lock']]],
+ ['unlock_5finternal',['unlock_internal',['../classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5',1,'grpc::lock_guard']]]
+];
diff --git a/doc/ref/c++/html/search/functions_13.html b/doc/ref/c++/html/search/functions_13.html
new file mode 100644
index 0000000000..724f5c1089
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_13.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_13.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_13.js b/doc/ref/c++/html/search/functions_13.js
new file mode 100644
index 0000000000..6d70f866ed
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_13.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['wait',['Wait',['../classgrpc_1_1_server.html#a6f1ec2700c94637813178a5b5f71d6d5',1,'grpc::Server::Wait()'],['../classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8',1,'grpc::condition_variable::wait()']]],
+ ['waitforinitialmetadata',['WaitForInitialMetadata',['../classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19',1,'grpc::ClientReaderInterface::WaitForInitialMetadata()'],['../classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e',1,'grpc::ClientReader::WaitForInitialMetadata()'],['../classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e',1,'grpc::ClientReaderWriterInterface::WaitForInitialMetadata()'],['../classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be',1,'grpc::ClientReaderWriter::WaitForInitialMetadata()']]],
+ ['write',['Write',['../classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44',1,'grpc::WriterInterface::Write(const W &amp;msg, const WriteOptions &amp;options)=0'],['../classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a',1,'grpc::WriterInterface::Write(const W &amp;msg)'],['../classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36',1,'grpc::ClientWriter::Write()'],['../classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762',1,'grpc::ClientReaderWriter::Write()'],['../classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a',1,'grpc::ServerWriter::Write()'],['../classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467',1,'grpc::ServerReaderWriter::Write()'],['../classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4',1,'grpc::AsyncWriterInterface::Write()'],['../classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a',1,'grpc::ClientAsyncWriter::Write()'],['../classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3',1,'grpc::ClientAsyncReaderWriter::Write()'],['../classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5',1,'grpc::ServerAsyncWriter::Write()'],['../classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35',1,'grpc::ServerAsyncReaderWriter::Write()']]],
+ ['writeoptions',['WriteOptions',['../classgrpc_1_1_write_options.html#a6a4e429313200ed6c017c5d306e26e93',1,'grpc::WriteOptions::WriteOptions()'],['../classgrpc_1_1_write_options.html#a4d7753bbd8d9d61e2c6d3e49e29be021',1,'grpc::WriteOptions::WriteOptions(const WriteOptions &amp;other)']]],
+ ['writesdone',['WritesDone',['../classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5',1,'grpc::ClientWriterInterface::WritesDone()'],['../classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352',1,'grpc::ClientWriter::WritesDone()'],['../classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8',1,'grpc::ClientReaderWriterInterface::WritesDone()'],['../classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898',1,'grpc::ClientReaderWriter::WritesDone()'],['../classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822',1,'grpc::ClientAsyncWriterInterface::WritesDone()'],['../classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47',1,'grpc::ClientAsyncWriter::WritesDone()'],['../classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3',1,'grpc::ClientAsyncReaderWriterInterface::WritesDone()'],['../classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637',1,'grpc::ClientAsyncReaderWriter::WritesDone()']]]
+];
diff --git a/doc/ref/c++/html/search/functions_14.html b/doc/ref/c++/html/search/functions_14.html
new file mode 100644
index 0000000000..396906bd30
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_14.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_14.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_14.js b/doc/ref/c++/html/search/functions_14.js
new file mode 100644
index 0000000000..b68eeabcfc
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_14.js
@@ -0,0 +1,37 @@
+var searchData=
+[
+ ['_7easynchronousservice',['~AsynchronousService',['../classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00',1,'grpc::AsynchronousService']]],
+ ['_7easyncreaderinterface',['~AsyncReaderInterface',['../classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379',1,'grpc::AsyncReaderInterface']]],
+ ['_7easyncwriterinterface',['~AsyncWriterInterface',['../classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd',1,'grpc::AsyncWriterInterface']]],
+ ['_7eauthcontext',['~AuthContext',['../classgrpc_1_1_auth_context.html#a3784c5f4eeab56a8524da29981548464',1,'grpc::AuthContext']]],
+ ['_7eauthpropertyiterator',['~AuthPropertyIterator',['../classgrpc_1_1_auth_property_iterator.html#a91a3a2ce5085a948aac11d7371c13b49',1,'grpc::AuthPropertyIterator']]],
+ ['_7ebytebuffer',['~ByteBuffer',['../classgrpc_1_1_byte_buffer.html#aeb5dd0045ed262de06481465326bd64a',1,'grpc::ByteBuffer']]],
+ ['_7ecallhook',['~CallHook',['../classgrpc_1_1_call_hook.html#a4aa1cf199f80f6475c6da0ad679c5d9d',1,'grpc::CallHook']]],
+ ['_7echannelarguments',['~ChannelArguments',['../classgrpc_1_1_channel_arguments.html#a8058adf243855c3a44030c23ccec05ad',1,'grpc::ChannelArguments']]],
+ ['_7echannelinterface',['~ChannelInterface',['../classgrpc_1_1_channel_interface.html#a3f5145d4778aa952540dc9983cefe13f',1,'grpc::ChannelInterface']]],
+ ['_7eclientasyncresponsereaderinterface',['~ClientAsyncResponseReaderInterface',['../classgrpc_1_1_client_async_response_reader_interface.html#aa97dc1ab6a7160a489d2e555102bf5a0',1,'grpc::ClientAsyncResponseReaderInterface']]],
+ ['_7eclientasyncstreaminginterface',['~ClientAsyncStreamingInterface',['../classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28',1,'grpc::ClientAsyncStreamingInterface']]],
+ ['_7eclientcontext',['~ClientContext',['../classgrpc_1_1_client_context.html#aeb77ea760faf8f96e775812806c0a3d9',1,'grpc::ClientContext']]],
+ ['_7eclientstreaminginterface',['~ClientStreamingInterface',['../classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e',1,'grpc::ClientStreamingInterface']]],
+ ['_7ecompletionqueue',['~CompletionQueue',['../classgrpc_1_1_completion_queue.html#aa0534391b20562e7e4cdc12daf0e36b0',1,'grpc::CompletionQueue']]],
+ ['_7ecompletionqueuetag',['~CompletionQueueTag',['../classgrpc_1_1_completion_queue_tag.html#a2cbf0212ed795c79f98c3421ed0cb4ab',1,'grpc::CompletionQueueTag']]],
+ ['_7econdition_5fvariable',['~condition_variable',['../classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca',1,'grpc::condition_variable']]],
+ ['_7ecredentials',['~Credentials',['../classgrpc_1_1_credentials.html#af4e8a65a6cee2b847e11134671c213f2',1,'grpc::Credentials']]],
+ ['_7edynamicthreadpool',['~DynamicThreadPool',['../classgrpc_1_1_dynamic_thread_pool.html#a9a81f1b15a357a8ca6cb3d7fef7a5456',1,'grpc::DynamicThreadPool']]],
+ ['_7efixedsizethreadpool',['~FixedSizeThreadPool',['../classgrpc_1_1_fixed_size_thread_pool.html#aa31a8326a490c77e0e04b6df7ac3d7f8',1,'grpc::FixedSizeThreadPool']]],
+ ['_7egrpclibrary',['~GrpcLibrary',['../classgrpc_1_1_grpc_library.html#adadb2fbc794175c8c4578bf283b009a8',1,'grpc::GrpcLibrary']]],
+ ['_7einternalstub',['~InternalStub',['../classgrpc_1_1_internal_stub.html#a43127d606386366f5935c08a21da059e',1,'grpc::InternalStub']]],
+ ['_7elock_5fguard',['~lock_guard',['../classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2',1,'grpc::lock_guard']]],
+ ['_7emethodhandler',['~MethodHandler',['../classgrpc_1_1_method_handler.html#afc792a35059d6c46b78d7d9410f9a4b0',1,'grpc::MethodHandler']]],
+ ['_7emutex',['~mutex',['../classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a',1,'grpc::mutex']]],
+ ['_7ereaderinterface',['~ReaderInterface',['../classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5',1,'grpc::ReaderInterface']]],
+ ['_7eserver',['~Server',['../classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2',1,'grpc::Server']]],
+ ['_7eserverasyncstreaminginterface',['~ServerAsyncStreamingInterface',['../classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc',1,'grpc::ServerAsyncStreamingInterface']]],
+ ['_7eservercontext',['~ServerContext',['../classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6',1,'grpc::ServerContext']]],
+ ['_7eservercredentials',['~ServerCredentials',['../classgrpc_1_1_server_credentials.html#aa5df8a7a8f509a96f23ef8943a0306ff',1,'grpc::ServerCredentials']]],
+ ['_7eslice',['~Slice',['../classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94',1,'grpc::Slice']]],
+ ['_7esynchronousservice',['~SynchronousService',['../classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05',1,'grpc::SynchronousService']]],
+ ['_7ethread',['~thread',['../classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f',1,'grpc::thread']]],
+ ['_7ethreadpoolinterface',['~ThreadPoolInterface',['../classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538',1,'grpc::ThreadPoolInterface']]],
+ ['_7ewriterinterface',['~WriterInterface',['../classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75',1,'grpc::WriterInterface']]]
+];
diff --git a/doc/ref/c++/html/search/functions_2.html b/doc/ref/c++/html/search/functions_2.html
new file mode 100644
index 0000000000..78be8b4198
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_2.js b/doc/ref/c++/html/search/functions_2.js
new file mode 100644
index 0000000000..9ae485b9b1
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_2.js
@@ -0,0 +1,43 @@
+var searchData=
+[
+ ['call',['Call',['../classgrpc_1_1_generic_stub.html#a29d999cf06468cfe12d3cdc912cb0afb',1,'grpc::GenericStub::Call()'],['../classgrpc_1_1_call.html#ac588bdaf930ff18cab36271a686b9a0a',1,'grpc::Call::Call(grpc_call *call, CallHook *call_hook_, CompletionQueue *cq)'],['../classgrpc_1_1_call.html#a82dc146935bbbb535d6c4c9fb9887373',1,'grpc::Call::Call(grpc_call *call, CallHook *call_hook_, CompletionQueue *cq, int max_message_size)'],['../classgrpc_1_1_call.html#a38a1f110afa06bdfd666d00dfa281a38',1,'grpc::Call::call()']]],
+ ['callopclientrecvstatus',['CallOpClientRecvStatus',['../classgrpc_1_1_call_op_client_recv_status.html#a86b01d095cec90f64a2fbd02da9be7de',1,'grpc::CallOpClientRecvStatus']]],
+ ['callopclientsendclose',['CallOpClientSendClose',['../classgrpc_1_1_call_op_client_send_close.html#a1601bc705c51e46133f2ee97921c712e',1,'grpc::CallOpClientSendClose']]],
+ ['callopgenericrecvmessage',['CallOpGenericRecvMessage',['../classgrpc_1_1_call_op_generic_recv_message.html#ae40448871744eb8a25b42003e2543eda',1,'grpc::CallOpGenericRecvMessage']]],
+ ['calloprecvinitialmetadata',['CallOpRecvInitialMetadata',['../classgrpc_1_1_call_op_recv_initial_metadata.html#a6c99b156711d0dc093a8578b45901cd8',1,'grpc::CallOpRecvInitialMetadata']]],
+ ['calloprecvmessage',['CallOpRecvMessage',['../classgrpc_1_1_call_op_recv_message.html#a5f2ead0399f19a906b82f87a82f24253',1,'grpc::CallOpRecvMessage']]],
+ ['callopsendinitialmetadata',['CallOpSendInitialMetadata',['../classgrpc_1_1_call_op_send_initial_metadata.html#a1cf749118f03392e186d251c48200dd8',1,'grpc::CallOpSendInitialMetadata']]],
+ ['callopsendmessage',['CallOpSendMessage',['../classgrpc_1_1_call_op_send_message.html#a049e460b94bad04d19e3fbe70ba43291',1,'grpc::CallOpSendMessage']]],
+ ['callopserversendstatus',['CallOpServerSendStatus',['../classgrpc_1_1_call_op_server_send_status.html#ab7a24493e9b8c6f2cc122cf3bd7796e4',1,'grpc::CallOpServerSendStatus']]],
+ ['callopset',['CallOpSet',['../classgrpc_1_1_call_op_set.html#ae06e1a2d051b6b404eec88c4be303bcf',1,'grpc::CallOpSet']]],
+ ['callopsetinterface',['CallOpSetInterface',['../classgrpc_1_1_call_op_set_interface.html#ad331a10c0fd65f5a9db680e95682f000',1,'grpc::CallOpSetInterface']]],
+ ['census_5fcontext',['census_context',['../classgrpc_1_1_client_context.html#a958acd964fe9feb32bca775c96ad5117',1,'grpc::ClientContext::census_context()'],['../classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e',1,'grpc::ServerContext::census_context()']]],
+ ['channel',['channel',['../classgrpc_1_1_internal_stub.html#ae314e47d92a7aed9779724d3a81c2729',1,'grpc::InternalStub']]],
+ ['channel_5ftag',['channel_tag',['../classgrpc_1_1_rpc_method.html#a59527e676d274583ec6961fb3f4356b3',1,'grpc::RpcMethod']]],
+ ['channelarguments',['ChannelArguments',['../classgrpc_1_1_channel_arguments.html#aecabf1ea1c78a3202544571cf857e8eb',1,'grpc::ChannelArguments::ChannelArguments()'],['../classgrpc_1_1_channel_arguments.html#ade11dfb5cac0e1da5e9ed5e86c18c4fe',1,'grpc::ChannelArguments::ChannelArguments(const ChannelArguments &amp;other)']]],
+ ['clear',['Clear',['../classgrpc_1_1_byte_buffer.html#a185b593e5c7d2b888fa377989a6bae80',1,'grpc::ByteBuffer::Clear()'],['../classgrpc_1_1_write_options.html#a9fc0e51224292b15dcfefec342fa0e02',1,'grpc::WriteOptions::Clear()']]],
+ ['clear_5fbuffer_5fhint',['clear_buffer_hint',['../classgrpc_1_1_write_options.html#a897ba94e51b1f6ead41ade8f92efa89f',1,'grpc::WriteOptions']]],
+ ['clear_5fno_5fcompression',['clear_no_compression',['../classgrpc_1_1_write_options.html#a7bc26dd151ed56bc49329ca895fe15e7',1,'grpc::WriteOptions']]],
+ ['client_5fmetadata',['client_metadata',['../classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1',1,'grpc::ServerContext']]],
+ ['clientasyncreader',['ClientAsyncReader',['../classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4',1,'grpc::ClientAsyncReader']]],
+ ['clientasyncreaderwriter',['ClientAsyncReaderWriter',['../classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066',1,'grpc::ClientAsyncReaderWriter']]],
+ ['clientasyncresponsereader',['ClientAsyncResponseReader',['../classgrpc_1_1_client_async_response_reader.html#a4868e0f82053062c95fea7bd197acadf',1,'grpc::ClientAsyncResponseReader']]],
+ ['clientasyncwriter',['ClientAsyncWriter',['../classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6',1,'grpc::ClientAsyncWriter']]],
+ ['clientcontext',['ClientContext',['../classgrpc_1_1_client_context.html#acabbcf3c160a0628da8a9274b10f54b9',1,'grpc::ClientContext']]],
+ ['clientreader',['ClientReader',['../classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56',1,'grpc::ClientReader']]],
+ ['clientreaderwriter',['ClientReaderWriter',['../classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc',1,'grpc::ClientReaderWriter']]],
+ ['clientrecvstatus',['ClientRecvStatus',['../classgrpc_1_1_call_op_client_recv_status.html#aa5af560ab0bb741197553bbb2538b813',1,'grpc::CallOpClientRecvStatus']]],
+ ['clientsendclose',['ClientSendClose',['../classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc',1,'grpc::CallOpClientSendClose']]],
+ ['clientstreaminghandler',['ClientStreamingHandler',['../classgrpc_1_1_client_streaming_handler.html#a193efc3ca1c668dddacd42e25c4956ff',1,'grpc::ClientStreamingHandler']]],
+ ['clientwriter',['ClientWriter',['../classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe',1,'grpc::ClientWriter']]],
+ ['completionqueue',['CompletionQueue',['../classgrpc_1_1_completion_queue.html#aea987a15a475923e949934e481fe3566',1,'grpc::CompletionQueue::CompletionQueue()'],['../classgrpc_1_1_completion_queue.html#a081a954044215a7ca8554da4220fb369',1,'grpc::CompletionQueue::CompletionQueue(grpc_completion_queue *take)']]],
+ ['compositecredentials',['CompositeCredentials',['../namespacegrpc.html#a0ffe059f3158d41d0e268fd375a0815c',1,'grpc']]],
+ ['compression_5falgorithm',['compression_algorithm',['../classgrpc_1_1_client_context.html#a91691d52182f45043ce9698424d26a56',1,'grpc::ClientContext::compression_algorithm()'],['../classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171',1,'grpc::ServerContext::compression_algorithm()']]],
+ ['compression_5flevel',['compression_level',['../classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8',1,'grpc::ServerContext']]],
+ ['computeenginecredentials',['ComputeEngineCredentials',['../namespacegrpc.html#a485ca55548022e260806c32d74095c8c',1,'grpc']]],
+ ['condition_5fvariable',['condition_variable',['../classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611',1,'grpc::condition_variable']]],
+ ['cq',['cq',['../classgrpc_1_1_completion_queue.html#a999c317e716d1e74aca2eb050912302b',1,'grpc::CompletionQueue::cq()'],['../classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14',1,'grpc::Call::cq()']]],
+ ['createcall',['CreateCall',['../classgrpc_1_1_channel_interface.html#a9fd365d30961e8e40805a3c8faf276d0',1,'grpc::ChannelInterface']]],
+ ['createchannel',['CreateChannel',['../namespacegrpc.html#ad56350897572898b62a33e384c5e4a59',1,'grpc']]],
+ ['createdefaultthreadpool',['CreateDefaultThreadPool',['../namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/functions_3.html b/doc/ref/c++/html/search/functions_3.html
new file mode 100644
index 0000000000..ebf2eebd0f
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_3.js b/doc/ref/c++/html/search/functions_3.js
new file mode 100644
index 0000000000..454a9af7ad
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_3.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['deadline',['deadline',['../classgrpc_1_1_client_context.html#af29e0113f661e1fbbecc20c268a3be6e',1,'grpc::ClientContext::deadline()'],['../classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052',1,'grpc::ServerContext::deadline()']]],
+ ['deserialize',['Deserialize',['../classgrpc_1_1_serialization_traits_3_01_byte_buffer_00_01void_01_4.html#ab84ad3da236c61aab17db403b48367f5',1,'grpc::SerializationTraits&lt; ByteBuffer, void &gt;::Deserialize()'],['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func.html#af2bc8b34d88cc5d355755ec94bf04bcb',1,'grpc::CallOpGenericRecvMessageHelper::DeserializeFunc::Deserialize()'],['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#aff7b6d6d9e51e6d0bdb3a150bc5f99d4',1,'grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType::Deserialize()'],['../classgrpc_1_1_serialization_traits_3_01_t_00_01typename_01std_1_1enable__if_3_01std_1_1is__base_42903f95c85f031c7724191271564901.html#a6a6966d3807ba3c7b3ccc79dca93b92a',1,'grpc::SerializationTraits&lt; T, typename std::enable_if&lt; std::is_base_of&lt; grpc::protobuf::Message, T &gt;::value &gt;::type &gt;::Deserialize()']]],
+ ['deserializefunctype',['DeserializeFuncType',['../classgrpc_1_1_call_op_generic_recv_message_helper_1_1_deserialize_func_type.html#ae14165824fb892eefb683da1405e0316',1,'grpc::CallOpGenericRecvMessageHelper::DeserializeFuncType']]],
+ ['deserializeproto',['DeserializeProto',['../namespacegrpc.html#a9124f8212366355212b2fefb8a6ccc1f',1,'grpc']]],
+ ['dump',['Dump',['../classgrpc_1_1_byte_buffer.html#a1b284d25c0c3c594c386800c548048f1',1,'grpc::ByteBuffer']]],
+ ['dynamicthreadpool',['DynamicThreadPool',['../classgrpc_1_1_dynamic_thread_pool.html#af4b6567a60ddfa8551dfbddab4cb7209',1,'grpc::DynamicThreadPool']]]
+];
diff --git a/doc/ref/c++/html/search/functions_4.html b/doc/ref/c++/html/search/functions_4.html
new file mode 100644
index 0000000000..7317ea9163
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_4.js b/doc/ref/c++/html/search/functions_4.js
new file mode 100644
index 0000000000..c2ccb7f7e1
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_4.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['end',['end',['../classgrpc_1_1_auth_context.html#a81d358b427e0f1096e148918cdeef991',1,'grpc::AuthContext::end()'],['../classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60',1,'grpc::Slice::end()']]],
+ ['error_5fcode',['error_code',['../classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181',1,'grpc::Status']]],
+ ['error_5fmessage',['error_message',['../classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16',1,'grpc::Status']]]
+];
diff --git a/doc/ref/c++/html/search/functions_5.html b/doc/ref/c++/html/search/functions_5.html
new file mode 100644
index 0000000000..1f1d9ce1b7
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_5.js b/doc/ref/c++/html/search/functions_5.js
new file mode 100644
index 0000000000..59e4c23b91
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_5.js
@@ -0,0 +1,13 @@
+var searchData=
+[
+ ['fillmetadataarray',['FillMetadataArray',['../namespacegrpc.html#a16ecfcd344f569a6fcfa2c42e3a43aca',1,'grpc']]],
+ ['fillmetadatamap',['FillMetadataMap',['../namespacegrpc.html#a00d2939a7b40a674459016f6148f372d',1,'grpc']]],
+ ['fillops',['FillOps',['../classgrpc_1_1_call_op_set_interface.html#ae0c95dfc28fc2a0add3e3bec1a703874',1,'grpc::CallOpSetInterface::FillOps()'],['../classgrpc_1_1_call_op_set.html#a886b55145cdad0994ec589b4f4c7df9c',1,'grpc::CallOpSet::FillOps()']]],
+ ['finalizeresult',['FinalizeResult',['../classgrpc_1_1_completion_queue_tag.html#af7b1abfcd9e506d118dfdcf29ce7fe8d',1,'grpc::CompletionQueueTag::FinalizeResult()'],['../classgrpc_1_1_call_op_set.html#a66575110fdb84b974182154a01464180',1,'grpc::CallOpSet::FinalizeResult()'],['../classgrpc_1_1_sneaky_call_op_set.html#a0ade5b329d43a4002388bac90a8bbafd',1,'grpc::SneakyCallOpSet::FinalizeResult()']]],
+ ['findpropertyvalues',['FindPropertyValues',['../classgrpc_1_1_auth_context.html#ad34c79f4934c974aa9e77ca69eed82aa',1,'grpc::AuthContext']]],
+ ['finish',['Finish',['../classgrpc_1_1_client_async_response_reader_interface.html#a379b1d7477431729e01cd48cf6fc78bb',1,'grpc::ClientAsyncResponseReaderInterface::Finish()'],['../classgrpc_1_1_client_async_response_reader.html#a585dc15817999f82a72120a783800830',1,'grpc::ClientAsyncResponseReader::Finish()'],['../classgrpc_1_1_server_async_response_writer.html#ad1e22d187c82a537ded4504fbdef6809',1,'grpc::ServerAsyncResponseWriter::Finish()'],['../classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4',1,'grpc::ClientStreamingInterface::Finish()'],['../classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df',1,'grpc::ClientReader::Finish()'],['../classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658',1,'grpc::ClientWriter::Finish()'],['../classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116',1,'grpc::ClientReaderWriter::Finish()'],['../classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24',1,'grpc::ClientAsyncStreamingInterface::Finish()'],['../classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f',1,'grpc::ClientAsyncReader::Finish()'],['../classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b',1,'grpc::ClientAsyncWriter::Finish()'],['../classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23',1,'grpc::ClientAsyncReaderWriter::Finish()'],['../classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59',1,'grpc::ServerAsyncReader::Finish()'],['../classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004',1,'grpc::ServerAsyncWriter::Finish()'],['../classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5',1,'grpc::ServerAsyncReaderWriter::Finish()']]],
+ ['finishop',['FinishOp',['../classgrpc_1_1_call_no_op.html#a2e39baf8e169ec930d2234c85ca577ae',1,'grpc::CallNoOp::FinishOp()'],['../classgrpc_1_1_call_op_send_initial_metadata.html#a70bd2ec3f8b7b95b02657902ee445a13',1,'grpc::CallOpSendInitialMetadata::FinishOp()'],['../classgrpc_1_1_call_op_send_message.html#a214a005bed5dd03d6dfa16f7a28b205b',1,'grpc::CallOpSendMessage::FinishOp()'],['../classgrpc_1_1_call_op_recv_message.html#ac235a695ea9beb6d4ff3f4f220f695c6',1,'grpc::CallOpRecvMessage::FinishOp()'],['../classgrpc_1_1_call_op_generic_recv_message.html#a40eba461f56840935c97934829b38e16',1,'grpc::CallOpGenericRecvMessage::FinishOp()'],['../classgrpc_1_1_call_op_client_send_close.html#a7c9bcf88cc1ddf2c6cf85cf141c85656',1,'grpc::CallOpClientSendClose::FinishOp()'],['../classgrpc_1_1_call_op_server_send_status.html#a91b57e7b08540afa237cf7621558c978',1,'grpc::CallOpServerSendStatus::FinishOp()'],['../classgrpc_1_1_call_op_recv_initial_metadata.html#a85e4703487b89a0557d82237ed4a74eb',1,'grpc::CallOpRecvInitialMetadata::FinishOp()'],['../classgrpc_1_1_call_op_client_recv_status.html#ac6fcc3bc9d7725d1ce822b560156445f',1,'grpc::CallOpClientRecvStatus::FinishOp()']]],
+ ['finishwitherror',['FinishWithError',['../classgrpc_1_1_server_async_response_writer.html#af1e5812c2a8017bf82e84748f201ce93',1,'grpc::ServerAsyncResponseWriter::FinishWithError()'],['../classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb',1,'grpc::ServerAsyncReader::FinishWithError()']]],
+ ['fixedsizethreadpool',['FixedSizeThreadPool',['../classgrpc_1_1_fixed_size_thread_pool.html#a7b1d9cbdaedc89f5f4dd6e5782bfe5e0',1,'grpc::FixedSizeThreadPool']]],
+ ['flags',['flags',['../classgrpc_1_1_write_options.html#a0e047a4f3d159749153bff276880e153',1,'grpc::WriteOptions']]]
+];
diff --git a/doc/ref/c++/html/search/functions_6.html b/doc/ref/c++/html/search/functions_6.html
new file mode 100644
index 0000000000..c9faaa6a99
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_6.js b/doc/ref/c++/html/search/functions_6.js
new file mode 100644
index 0000000000..355edd6398
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_6.js
@@ -0,0 +1,14 @@
+var searchData=
+[
+ ['genericstub',['GenericStub',['../classgrpc_1_1_generic_stub.html#a1523f381907ac18b841bb4064f2a3b88',1,'grpc::GenericStub']]],
+ ['get_5fbuffer_5fhint',['get_buffer_hint',['../classgrpc_1_1_write_options.html#a58a983a81a17d0b8f3996164f55912ef',1,'grpc::WriteOptions']]],
+ ['get_5fno_5fcompression',['get_no_compression',['../classgrpc_1_1_write_options.html#accb16dd92f4001a6d024ffb01178d4bf',1,'grpc::WriteOptions']]],
+ ['getmethod',['GetMethod',['../classgrpc_1_1_rpc_service.html#adb8bee7f95fdd7bfb12e9c510fbdd192',1,'grpc::RpcService']]],
+ ['getmethodcount',['GetMethodCount',['../classgrpc_1_1_rpc_service.html#a779c023a42b33893a5ae2b7ca0ef5191',1,'grpc::RpcService']]],
+ ['getpeeridentity',['GetPeerIdentity',['../classgrpc_1_1_auth_context.html#a94f653509ddd988ce8fd4f22746fead9',1,'grpc::AuthContext']]],
+ ['getpeeridentitypropertyname',['GetPeerIdentityPropertyName',['../classgrpc_1_1_auth_context.html#ad7b2e589590246b953decd05cdaa4465',1,'grpc::AuthContext']]],
+ ['getserverinitialmetadata',['GetServerInitialMetadata',['../classgrpc_1_1_client_context.html#a971f592cb4c3d4cc4be227c413264d15',1,'grpc::ClientContext']]],
+ ['getservertrailingmetadata',['GetServerTrailingMetadata',['../classgrpc_1_1_client_context.html#ab2ad079046a7f9e6dba922274e11aaa3',1,'grpc::ClientContext']]],
+ ['googledefaultcredentials',['GoogleDefaultCredentials',['../namespacegrpc.html#a63d3b2c5cb11f48742da0d245b0771d3',1,'grpc']]],
+ ['grpclibrary',['GrpcLibrary',['../classgrpc_1_1_grpc_library.html#af026f86430cf235d7eaf532231a44528',1,'grpc::GrpcLibrary']]]
+];
diff --git a/doc/ref/c++/html/search/functions_7.html b/doc/ref/c++/html/search/functions_7.html
new file mode 100644
index 0000000000..ec330da83b
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_7.js b/doc/ref/c++/html/search/functions_7.js
new file mode 100644
index 0000000000..11476f6d88
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_7.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['handler',['handler',['../classgrpc_1_1_rpc_service_method.html#adcc8bfb7dc592f6b64fec6660f1cbaf1',1,'grpc::RpcServiceMethod']]],
+ ['handlerparameter',['HandlerParameter',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693',1,'grpc::MethodHandler::HandlerParameter']]],
+ ['host',['host',['../classgrpc_1_1_generic_server_context.html#a2962278c0c6280a2d95f5747ea03babc',1,'grpc::GenericServerContext']]]
+];
diff --git a/doc/ref/c++/html/search/functions_8.html b/doc/ref/c++/html/search/functions_8.html
new file mode 100644
index 0000000000..afd4facf81
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_8.js b/doc/ref/c++/html/search/functions_8.js
new file mode 100644
index 0000000000..f7e2d3d5c4
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_8.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['iamcredentials',['IAMCredentials',['../namespacegrpc.html#a78c4ecc2e69303f203fd67fd272b6c96',1,'grpc']]],
+ ['insecurecredentials',['InsecureCredentials',['../namespacegrpc.html#ab7d08c50ff1dd9a368a9ff8191f855c3',1,'grpc']]],
+ ['insecureservercredentials',['InsecureServerCredentials',['../namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940',1,'grpc']]],
+ ['internalstub',['InternalStub',['../classgrpc_1_1_internal_stub.html#a5af6cf82c3f8218d94704226559e1b3c',1,'grpc::InternalStub']]],
+ ['iscancelled',['IsCancelled',['../classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864',1,'grpc::ServerContext']]]
+];
diff --git a/doc/ref/c++/html/search/functions_9.html b/doc/ref/c++/html/search/functions_9.html
new file mode 100644
index 0000000000..542b9e0a29
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_9.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_9.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_9.js b/doc/ref/c++/html/search/functions_9.js
new file mode 100644
index 0000000000..14e6845c12
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['join',['join',['../classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f',1,'grpc::thread']]]
+];
diff --git a/doc/ref/c++/html/search/functions_a.html b/doc/ref/c++/html/search/functions_a.html
new file mode 100644
index 0000000000..94fd395d6f
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_a.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_a.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_a.js b/doc/ref/c++/html/search/functions_a.js
new file mode 100644
index 0000000000..a19e58efd7
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_a.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['length',['Length',['../classgrpc_1_1_byte_buffer.html#a9429e928982f8d94ff93a1a91032ad59',1,'grpc::ByteBuffer']]],
+ ['lock',['lock',['../classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54',1,'grpc::unique_lock']]],
+ ['lock_5fguard',['lock_guard',['../classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264',1,'grpc::lock_guard']]],
+ ['lock_5finternal',['lock_internal',['../classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649',1,'grpc::lock_guard']]]
+];
diff --git a/doc/ref/c++/html/search/functions_b.html b/doc/ref/c++/html/search/functions_b.html
new file mode 100644
index 0000000000..1a03617de0
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_b.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_b.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_b.js b/doc/ref/c++/html/search/functions_b.js
new file mode 100644
index 0000000000..643fdf5748
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_b.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['max_5fmessage_5fsize',['max_message_size',['../classgrpc_1_1_call.html#aabd1f570cd026b4e5630abc58498a095',1,'grpc::Call']]],
+ ['method',['method',['../classgrpc_1_1_generic_server_context.html#ae08880fa4adb490326953ad905715c37',1,'grpc::GenericServerContext']]],
+ ['method_5ftype',['method_type',['../classgrpc_1_1_rpc_method.html#a1de5a64a1e57b5938c4733f9152291b6',1,'grpc::RpcMethod']]],
+ ['mutex',['mutex',['../classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581',1,'grpc::mutex']]]
+];
diff --git a/doc/ref/c++/html/search/functions_c.html b/doc/ref/c++/html/search/functions_c.html
new file mode 100644
index 0000000000..a6536e9419
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_c.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_c.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_c.js b/doc/ref/c++/html/search/functions_c.js
new file mode 100644
index 0000000000..cb18c7f222
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_c.js
@@ -0,0 +1,7 @@
+var searchData=
+[
+ ['name',['name',['../classgrpc_1_1_rpc_method.html#a6fb4872e0af4c79faffe2bb30b2cafe3',1,'grpc::RpcMethod']]],
+ ['next',['Next',['../classgrpc_1_1_completion_queue.html#a86d9810ced694e50f7987ac90b9f8c1a',1,'grpc::CompletionQueue']]],
+ ['notify_5fall',['notify_all',['../classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36',1,'grpc::condition_variable']]],
+ ['notify_5fone',['notify_one',['../classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3',1,'grpc::condition_variable']]]
+];
diff --git a/doc/ref/c++/html/search/functions_d.html b/doc/ref/c++/html/search/functions_d.html
new file mode 100644
index 0000000000..8cdcc06f33
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_d.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_d.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_d.js b/doc/ref/c++/html/search/functions_d.js
new file mode 100644
index 0000000000..be9591e496
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_d.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['ok',['ok',['../classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc',1,'grpc::Status']]],
+ ['operator_21_3d',['operator!=',['../classgrpc_1_1_auth_property_iterator.html#af3d2671fe70be36b2ed26a75874f2fc1',1,'grpc::AuthPropertyIterator']]],
+ ['operator_2a',['operator*',['../classgrpc_1_1_auth_property_iterator.html#a564f39b91f4168c6f660bbd3144f1f0e',1,'grpc::AuthPropertyIterator']]],
+ ['operator_2b_2b',['operator++',['../classgrpc_1_1_auth_property_iterator.html#ac4a895110475c25b9bdce9b72eb19cd6',1,'grpc::AuthPropertyIterator::operator++()'],['../classgrpc_1_1_auth_property_iterator.html#a76dd5ef5047b10f889d85ce2bb33b84b',1,'grpc::AuthPropertyIterator::operator++(int)']]],
+ ['operator_3d',['operator=',['../classgrpc_1_1_channel_arguments.html#ac75ba90de32a5c7f3cb6c62f7ce649be',1,'grpc::ChannelArguments::operator=()'],['../classgrpc_1_1_write_options.html#abe3d32a3e5879022e7b8f1c6a7533841',1,'grpc::WriteOptions::operator=()'],['../classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1',1,'grpc::Slice::operator=()']]],
+ ['operator_3d_3d',['operator==',['../classgrpc_1_1_auth_property_iterator.html#ab5ab6a2c9a4df2b02086513716553dee',1,'grpc::AuthPropertyIterator']]]
+];
diff --git a/doc/ref/c++/html/search/functions_e.html b/doc/ref/c++/html/search/functions_e.html
new file mode 100644
index 0000000000..649b2c9af6
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_e.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_e.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_e.js b/doc/ref/c++/html/search/functions_e.js
new file mode 100644
index 0000000000..e3fc377692
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_e.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['peer',['peer',['../classgrpc_1_1_client_context.html#a905d667d96613e022cd83c13dbedb4c3',1,'grpc::ClientContext::peer()'],['../classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb',1,'grpc::ServerContext::peer()']]],
+ ['performops',['PerformOps',['../classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4',1,'grpc::Call']]],
+ ['performopsoncall',['PerformOpsOnCall',['../classgrpc_1_1_call_hook.html#acf08b6dd7d1faba4efeeb4937bc81d29',1,'grpc::CallHook']]]
+];
diff --git a/doc/ref/c++/html/search/functions_f.html b/doc/ref/c++/html/search/functions_f.html
new file mode 100644
index 0000000000..386c7d46b1
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_f.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="functions_f.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/functions_f.js b/doc/ref/c++/html/search/functions_f.js
new file mode 100644
index 0000000000..67907b0005
--- /dev/null
+++ b/doc/ref/c++/html/search/functions_f.js
@@ -0,0 +1,23 @@
+var searchData=
+[
+ ['raw_5fdeadline',['raw_deadline',['../classgrpc_1_1_client_context.html#a5057cab6d547678dded90c024efab652',1,'grpc::ClientContext::raw_deadline()'],['../classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc',1,'grpc::ServerContext::raw_deadline()']]],
+ ['raw_5ftime',['raw_time',['../classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6',1,'grpc::TimePoint::raw_time()'],['../classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2',1,'grpc::TimePoint&lt; gpr_timespec &gt;::raw_time()'],['../classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93',1,'grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;::raw_time()']]],
+ ['read',['Read',['../classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8',1,'grpc::ReaderInterface::Read()'],['../classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7',1,'grpc::ClientReader::Read()'],['../classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c',1,'grpc::ClientReaderWriter::Read()'],['../classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0',1,'grpc::ServerReader::Read()'],['../classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d',1,'grpc::ServerReaderWriter::Read()'],['../classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11',1,'grpc::AsyncReaderInterface::Read()'],['../classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d',1,'grpc::ClientAsyncReader::Read()'],['../classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f',1,'grpc::ClientAsyncReaderWriter::Read()'],['../classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f',1,'grpc::ServerAsyncReader::Read()'],['../classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a',1,'grpc::ServerAsyncReaderWriter::Read()']]],
+ ['readinitialmetadata',['ReadInitialMetadata',['../classgrpc_1_1_client_async_response_reader_interface.html#a676e3a03a61c49a82b630d85bbfd366c',1,'grpc::ClientAsyncResponseReaderInterface::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_response_reader.html#a963aefc43f34c9182e265647bbcdb91b',1,'grpc::ClientAsyncResponseReader::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174',1,'grpc::ClientAsyncStreamingInterface::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863',1,'grpc::ClientAsyncReader::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7',1,'grpc::ClientAsyncWriter::ReadInitialMetadata()'],['../classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162',1,'grpc::ClientAsyncReaderWriter::ReadInitialMetadata()']]],
+ ['recvinitialmetadata',['RecvInitialMetadata',['../classgrpc_1_1_call_op_recv_initial_metadata.html#a4dcc9f22c6966baca69cb1935c823a8e',1,'grpc::CallOpRecvInitialMetadata']]],
+ ['recvmessage',['RecvMessage',['../classgrpc_1_1_call_op_recv_message.html#aa2bdc2952010ab3a017bb859a1c6161c',1,'grpc::CallOpRecvMessage::RecvMessage()'],['../classgrpc_1_1_call_op_generic_recv_message.html#a0235adb3ae82cf78552f556856feb788',1,'grpc::CallOpGenericRecvMessage::RecvMessage()']]],
+ ['refreshtokencredentials',['RefreshTokenCredentials',['../namespacegrpc.html#af69bf38a7cfbd24e127deb86d50dc41d',1,'grpc']]],
+ ['registerasyncgenericservice',['RegisterAsyncGenericService',['../classgrpc_1_1_server_builder.html#ac62b0aa4c0448907e02d15386d58ef86',1,'grpc::ServerBuilder']]],
+ ['registerasyncservice',['RegisterAsyncService',['../classgrpc_1_1_server_builder.html#a2da69a943b10839d6993f9b292aaf578',1,'grpc::ServerBuilder::RegisterAsyncService(AsynchronousService *service)'],['../classgrpc_1_1_server_builder.html#a2107596214baf71230f4f270dec1d064',1,'grpc::ServerBuilder::RegisterAsyncService(const grpc::string &amp;host, AsynchronousService *service)']]],
+ ['registermethod',['RegisterMethod',['../classgrpc_1_1_channel_interface.html#a267926300784051328390b2f7648c99f',1,'grpc::ChannelInterface']]],
+ ['registerservice',['RegisterService',['../classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66',1,'grpc::ServerBuilder::RegisterService(SynchronousService *service)'],['../classgrpc_1_1_server_builder.html#ad961d91042fe44aa38fa3e1d57120861',1,'grpc::ServerBuilder::RegisterService(const grpc::string &amp;host, SynchronousService *service)']]],
+ ['requestasyncunary',['RequestAsyncUnary',['../classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990',1,'grpc::AsynchronousService']]],
+ ['requestbidistreaming',['RequestBidiStreaming',['../classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608',1,'grpc::AsynchronousService']]],
+ ['requestcall',['RequestCall',['../classgrpc_1_1_async_generic_service.html#aeab5c20e89a754d5add4bdaad01a3ef6',1,'grpc::AsyncGenericService']]],
+ ['requestclientstreaming',['RequestClientStreaming',['../classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369',1,'grpc::AsynchronousService']]],
+ ['requestserverstreaming',['RequestServerStreaming',['../classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564',1,'grpc::AsynchronousService']]],
+ ['rpcmethod',['RpcMethod',['../classgrpc_1_1_rpc_method.html#ab06ace199b65e09f1d4c9fde93dafc94',1,'grpc::RpcMethod']]],
+ ['rpcmethodhandler',['RpcMethodHandler',['../classgrpc_1_1_rpc_method_handler.html#af18c4bdcfc73d0238b238097547e6a48',1,'grpc::RpcMethodHandler']]],
+ ['rpcservicemethod',['RpcServiceMethod',['../classgrpc_1_1_rpc_service_method.html#a9a4a54d93c2c5d2b5b52ff50af5971da',1,'grpc::RpcServiceMethod']]],
+ ['runhandler',['RunHandler',['../classgrpc_1_1_method_handler.html#a8f901c44915f81bb86ecba0278f7db16',1,'grpc::MethodHandler::RunHandler()'],['../classgrpc_1_1_rpc_method_handler.html#a3dd04e9149c844224390b403ff24fa41',1,'grpc::RpcMethodHandler::RunHandler()'],['../classgrpc_1_1_client_streaming_handler.html#a702cbf84fa766383bfbb818c8a16e67c',1,'grpc::ClientStreamingHandler::RunHandler()'],['../classgrpc_1_1_server_streaming_handler.html#afd874fc0f3a73c4037d626d3ecbcccca',1,'grpc::ServerStreamingHandler::RunHandler()'],['../classgrpc_1_1_bidi_streaming_handler.html#a674385b5e9f48ffff0bcbc5d77f99bf1',1,'grpc::BidiStreamingHandler::RunHandler()']]]
+];
diff --git a/doc/ref/c++/html/search/mag_sel.png b/doc/ref/c++/html/search/mag_sel.png
new file mode 100644
index 0000000000..81f6040a20
--- /dev/null
+++ b/doc/ref/c++/html/search/mag_sel.png
Binary files differ
diff --git a/doc/ref/c++/html/search/namespaces_0.html b/doc/ref/c++/html/search/namespaces_0.html
new file mode 100644
index 0000000000..dc6068615d
--- /dev/null
+++ b/doc/ref/c++/html/search/namespaces_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="namespaces_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/namespaces_0.js b/doc/ref/c++/html/search/namespaces_0.js
new file mode 100644
index 0000000000..bf7a15f20d
--- /dev/null
+++ b/doc/ref/c++/html/search/namespaces_0.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['callopgenericrecvmessagehelper',['CallOpGenericRecvMessageHelper',['../namespacegrpc_1_1_call_op_generic_recv_message_helper.html',1,'grpc']]],
+ ['grpc',['grpc',['../namespacegrpc.html',1,'']]],
+ ['io',['io',['../namespacegrpc_1_1protobuf_1_1io.html',1,'grpc::protobuf']]],
+ ['protobuf',['protobuf',['../namespacegrpc_1_1protobuf.html',1,'grpc']]],
+ ['testing',['testing',['../namespacegrpc_1_1testing.html',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/nomatches.html b/doc/ref/c++/html/search/nomatches.html
new file mode 100644
index 0000000000..b1ded27e9a
--- /dev/null
+++ b/doc/ref/c++/html/search/nomatches.html
@@ -0,0 +1,12 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="NoMatches">No Matches</div>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_0.html b/doc/ref/c++/html/search/related_0.html
new file mode 100644
index 0000000000..b6476349f4
--- /dev/null
+++ b/doc/ref/c++/html/search/related_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_0.js b/doc/ref/c++/html/search/related_0.js
new file mode 100644
index 0000000000..0dd29abe92
--- /dev/null
+++ b/doc/ref/c++/html/search/related_0.js
@@ -0,0 +1,20 @@
+var searchData=
+[
+ ['clientasyncreader',['ClientAsyncReader',['../classgrpc_1_1_client_context.html#af5343062a44a5633b144751e59969237',1,'grpc::ClientContext']]],
+ ['clientasyncreaderwriter',['ClientAsyncReaderWriter',['../classgrpc_1_1_client_context.html#a5c0c96957129933bfe94a299c764eaa7',1,'grpc::ClientContext']]],
+ ['clientasyncresponsereader',['ClientAsyncResponseReader',['../classgrpc_1_1_client_context.html#a4b00162a9bd86e07669f2af67f85c73a',1,'grpc::ClientContext']]],
+ ['clientasyncwriter',['ClientAsyncWriter',['../classgrpc_1_1_client_context.html#af3547958eadfaeb18692865bd73999ad',1,'grpc::ClientContext']]],
+ ['clientreader',['ClientReader',['../classgrpc_1_1_client_context.html#ade499098cc91745c1c87147d7a7fb7bf',1,'grpc::ClientContext::ClientReader()'],['../classgrpc_1_1_completion_queue.html#ade499098cc91745c1c87147d7a7fb7bf',1,'grpc::CompletionQueue::ClientReader()']]],
+ ['clientreaderwriter',['ClientReaderWriter',['../classgrpc_1_1_client_context.html#a6d5659aa24edba057895be774e2752ec',1,'grpc::ClientContext::ClientReaderWriter()'],['../classgrpc_1_1_completion_queue.html#a6d5659aa24edba057895be774e2752ec',1,'grpc::CompletionQueue::ClientReaderWriter()']]],
+ ['clientwriter',['ClientWriter',['../classgrpc_1_1_client_context.html#a4498fada67d531d99a8642f47d746544',1,'grpc::ClientContext::ClientWriter()'],['../classgrpc_1_1_completion_queue.html#a4498fada67d531d99a8642f47d746544',1,'grpc::CompletionQueue::ClientWriter()']]],
+ ['interopcontextinspector',['InteropContextInspector',['../classgrpc_1_1_server_context.html#a54fd90aaca3685b127354412368eb1c6',1,'grpc::ServerContext']]],
+ ['server',['Server',['../classgrpc_1_1_completion_queue.html#a8c3fa4c066981aae114e41c3f9340144',1,'grpc::CompletionQueue::Server()'],['../classgrpc_1_1_server_context.html#a8c3fa4c066981aae114e41c3f9340144',1,'grpc::ServerContext::Server()'],['../classgrpc_1_1_server_credentials.html#a8c3fa4c066981aae114e41c3f9340144',1,'grpc::ServerCredentials::Server()']]],
+ ['serverasyncreader',['ServerAsyncReader',['../classgrpc_1_1_server_context.html#a774bb57486686958c67f29072de768ed',1,'grpc::ServerContext']]],
+ ['serverasyncreaderwriter',['ServerAsyncReaderWriter',['../classgrpc_1_1_server_context.html#a85f3f3dc5b92690c676b86571be20684',1,'grpc::ServerContext']]],
+ ['serverasyncresponsewriter',['ServerAsyncResponseWriter',['../classgrpc_1_1_server_context.html#a2c679b602d120c70a6713fe742704b4e',1,'grpc::ServerContext']]],
+ ['serverasyncwriter',['ServerAsyncWriter',['../classgrpc_1_1_server_context.html#a6068d9e3369a1016e7b75350b80f4f45',1,'grpc::ServerContext']]],
+ ['servercontext',['ServerContext',['../classgrpc_1_1_completion_queue.html#a6c5b4f4c66d254f341915982a17aac95',1,'grpc::CompletionQueue']]],
+ ['serverreader',['ServerReader',['../classgrpc_1_1_completion_queue.html#a4f20e2d049342ae00242bbc8021a44bd',1,'grpc::CompletionQueue::ServerReader()'],['../classgrpc_1_1_server_context.html#a4f20e2d049342ae00242bbc8021a44bd',1,'grpc::ServerContext::ServerReader()']]],
+ ['serverreaderwriter',['ServerReaderWriter',['../classgrpc_1_1_completion_queue.html#a8c0a0d64c582a952c8f16d8eac71c677',1,'grpc::CompletionQueue::ServerReaderWriter()'],['../classgrpc_1_1_server_context.html#a8c0a0d64c582a952c8f16d8eac71c677',1,'grpc::ServerContext::ServerReaderWriter()']]],
+ ['serverwriter',['ServerWriter',['../classgrpc_1_1_completion_queue.html#a2f2dfa831a62c43ad5647a45080488e3',1,'grpc::CompletionQueue::ServerWriter()'],['../classgrpc_1_1_server_context.html#a2f2dfa831a62c43ad5647a45080488e3',1,'grpc::ServerContext::ServerWriter()']]]
+];
diff --git a/doc/ref/c++/html/search/related_1.html b/doc/ref/c++/html/search/related_1.html
new file mode 100644
index 0000000000..66fb1d1055
--- /dev/null
+++ b/doc/ref/c++/html/search/related_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_1.js b/doc/ref/c++/html/search/related_1.js
new file mode 100644
index 0000000000..b2f3cd71f4
--- /dev/null
+++ b/doc/ref/c++/html/search/related_1.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['asyncgenericservice',['AsyncGenericService',['../classgrpc_1_1_server.html#afa12bc5912105e1966887391881de595',1,'grpc::Server']]],
+ ['asynchronousservice',['AsynchronousService',['../classgrpc_1_1_server.html#a9f65421947ee8cbae15ff96b44f6d532',1,'grpc::Server']]]
+];
diff --git a/doc/ref/c++/html/search/related_2.html b/doc/ref/c++/html/search/related_2.html
new file mode 100644
index 0000000000..06b8cbf490
--- /dev/null
+++ b/doc/ref/c++/html/search/related_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_2.js b/doc/ref/c++/html/search/related_2.js
new file mode 100644
index 0000000000..25cdff4667
--- /dev/null
+++ b/doc/ref/c++/html/search/related_2.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['bidistreaminghandler',['BidiStreamingHandler',['../classgrpc_1_1_completion_queue.html#a9fcf1462b4ea3c6a37e54076aafb93e1',1,'grpc::CompletionQueue::BidiStreamingHandler()'],['../classgrpc_1_1_server_context.html#a9fcf1462b4ea3c6a37e54076aafb93e1',1,'grpc::ServerContext::BidiStreamingHandler()']]],
+ ['blockingunarycall',['BlockingUnaryCall',['../classgrpc_1_1_client_context.html#a4aac0a120f3498d1151460ef89ce8446',1,'grpc::ClientContext::BlockingUnaryCall()'],['../classgrpc_1_1_completion_queue.html#a4aac0a120f3498d1151460ef89ce8446',1,'grpc::CompletionQueue::BlockingUnaryCall()']]],
+ ['bytebuffer',['ByteBuffer',['../classgrpc_1_1_slice.html#ac6c83f28f4b17ae317094a794e92e99e',1,'grpc::Slice']]]
+];
diff --git a/doc/ref/c++/html/search/related_3.html b/doc/ref/c++/html/search/related_3.html
new file mode 100644
index 0000000000..b89f2c9d72
--- /dev/null
+++ b/doc/ref/c++/html/search/related_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_3.js b/doc/ref/c++/html/search/related_3.js
new file mode 100644
index 0000000000..1ce858e377
--- /dev/null
+++ b/doc/ref/c++/html/search/related_3.js
@@ -0,0 +1,10 @@
+var searchData=
+[
+ ['callopclientrecvstatus',['CallOpClientRecvStatus',['../classgrpc_1_1_client_context.html#aa7c3f046b48d55b5a82cbee3fd84faa2',1,'grpc::ClientContext']]],
+ ['calloprecvinitialmetadata',['CallOpRecvInitialMetadata',['../classgrpc_1_1_client_context.html#a94ad025954d211da7d27efa58cb2ea91',1,'grpc::ClientContext']]],
+ ['channel',['Channel',['../classgrpc_1_1_client_context.html#ac47342240f21ce36f47485e4ab41a10d',1,'grpc::ClientContext']]],
+ ['clientstreaminghandler',['ClientStreamingHandler',['../classgrpc_1_1_completion_queue.html#ae11583f8aab976055b1feae895d7e12a',1,'grpc::CompletionQueue::ClientStreamingHandler()'],['../classgrpc_1_1_server_context.html#ae11583f8aab976055b1feae895d7e12a',1,'grpc::ServerContext::ClientStreamingHandler()']]],
+ ['compositecredentials',['CompositeCredentials',['../classgrpc_1_1_credentials.html#a319db47fafb1868e66fd34b8bc084f3f',1,'grpc::Credentials']]],
+ ['condition_5fvariable',['condition_variable',['../classgrpc_1_1mutex.html#a89c9b6aa2256fa5efd92a333d96381d4',1,'grpc::mutex::condition_variable()'],['../classgrpc_1_1lock__guard.html#a89c9b6aa2256fa5efd92a333d96381d4',1,'grpc::lock_guard::condition_variable()']]],
+ ['createchannel',['CreateChannel',['../classgrpc_1_1_credentials.html#a6cd496f9dd7e19b5bdbafaa41036fe69',1,'grpc::Credentials']]]
+];
diff --git a/doc/ref/c++/html/search/related_4.html b/doc/ref/c++/html/search/related_4.html
new file mode 100644
index 0000000000..d4dbf36771
--- /dev/null
+++ b/doc/ref/c++/html/search/related_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_4.js b/doc/ref/c++/html/search/related_4.js
new file mode 100644
index 0000000000..5a8ab6216f
--- /dev/null
+++ b/doc/ref/c++/html/search/related_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['lock_5fguard',['lock_guard',['../classgrpc_1_1mutex.html#a4cfa68eb2ccf47f11c725b6773ff9a5b',1,'grpc::mutex']]]
+];
diff --git a/doc/ref/c++/html/search/related_5.html b/doc/ref/c++/html/search/related_5.html
new file mode 100644
index 0000000000..bb3bdffb98
--- /dev/null
+++ b/doc/ref/c++/html/search/related_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_5.js b/doc/ref/c++/html/search/related_5.js
new file mode 100644
index 0000000000..0841129c29
--- /dev/null
+++ b/doc/ref/c++/html/search/related_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['rpcmethodhandler',['RpcMethodHandler',['../classgrpc_1_1_completion_queue.html#a76b9bb18b02084e9eaa8c9b99c668676',1,'grpc::CompletionQueue::RpcMethodHandler()'],['../classgrpc_1_1_server_context.html#a76b9bb18b02084e9eaa8c9b99c668676',1,'grpc::ServerContext::RpcMethodHandler()']]]
+];
diff --git a/doc/ref/c++/html/search/related_6.html b/doc/ref/c++/html/search/related_6.html
new file mode 100644
index 0000000000..e42ea5ac99
--- /dev/null
+++ b/doc/ref/c++/html/search/related_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_6.js b/doc/ref/c++/html/search/related_6.js
new file mode 100644
index 0000000000..a0af153dca
--- /dev/null
+++ b/doc/ref/c++/html/search/related_6.js
@@ -0,0 +1,9 @@
+var searchData=
+[
+ ['secureauthcontext',['SecureAuthContext',['../classgrpc_1_1_auth_property_iterator.html#a18a70918b1f73cdd22cb263845b78d6d',1,'grpc::AuthPropertyIterator']]],
+ ['securecredentials',['SecureCredentials',['../classgrpc_1_1_channel_arguments.html#ae60893d904f922c32a57fb18e618db66',1,'grpc::ChannelArguments']]],
+ ['serializationtraits_3c_20bytebuffer_2c_20void_20_3e',['SerializationTraits&lt; ByteBuffer, void &gt;',['../classgrpc_1_1_byte_buffer.html#ab90fe50537dd6fe009b7b913652420f0',1,'grpc::ByteBuffer']]],
+ ['server',['Server',['../classgrpc_1_1_generic_server_context.html#ac2055578ac48afabe5af487878450f68',1,'grpc::GenericServerContext::Server()'],['../classgrpc_1_1_async_generic_service.html#ac2055578ac48afabe5af487878450f68',1,'grpc::AsyncGenericService::Server()'],['../classgrpc_1_1_server_async_streaming_interface.html#ac2055578ac48afabe5af487878450f68',1,'grpc::ServerAsyncStreamingInterface::Server()'],['../classgrpc_1_1_asynchronous_service.html#ac2055578ac48afabe5af487878450f68',1,'grpc::AsynchronousService::Server()']]],
+ ['serverbuilder',['ServerBuilder',['../classgrpc_1_1_server_completion_queue.html#a8c2db91f514d534f06396d90c1b1f2c4',1,'grpc::ServerCompletionQueue::ServerBuilder()'],['../classgrpc_1_1_server.html#a8c2db91f514d534f06396d90c1b1f2c4',1,'grpc::Server::ServerBuilder()']]],
+ ['serverstreaminghandler',['ServerStreamingHandler',['../classgrpc_1_1_completion_queue.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c',1,'grpc::CompletionQueue::ServerStreamingHandler()'],['../classgrpc_1_1_server_context.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c',1,'grpc::ServerContext::ServerStreamingHandler()']]]
+];
diff --git a/doc/ref/c++/html/search/related_7.html b/doc/ref/c++/html/search/related_7.html
new file mode 100644
index 0000000000..50cdfe50fa
--- /dev/null
+++ b/doc/ref/c++/html/search/related_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="related_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/related_7.js b/doc/ref/c++/html/search/related_7.js
new file mode 100644
index 0000000000..92b21c76bb
--- /dev/null
+++ b/doc/ref/c++/html/search/related_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['channelargumentstest',['ChannelArgumentsTest',['../classgrpc_1_1_channel_arguments.html#ab9fc942609a77bb3021ba172be262c7b',1,'grpc::ChannelArguments']]]
+];
diff --git a/doc/ref/c++/html/search/search.css b/doc/ref/c++/html/search/search.css
new file mode 100644
index 0000000000..4d7612ff63
--- /dev/null
+++ b/doc/ref/c++/html/search/search.css
@@ -0,0 +1,271 @@
+/*---------------- Search Box */
+
+#FSearchBox {
+ float: left;
+}
+
+#MSearchBox {
+ white-space : nowrap;
+ position: absolute;
+ float: none;
+ display: inline;
+ margin-top: 8px;
+ right: 0px;
+ width: 170px;
+ z-index: 102;
+ background-color: white;
+}
+
+#MSearchBox .left
+{
+ display:block;
+ position:absolute;
+ left:10px;
+ width:20px;
+ height:19px;
+ background:url('search_l.png') no-repeat;
+ background-position:right;
+}
+
+#MSearchSelect {
+ display:block;
+ position:absolute;
+ width:20px;
+ height:19px;
+}
+
+.left #MSearchSelect {
+ left:4px;
+}
+
+.right #MSearchSelect {
+ right:5px;
+}
+
+#MSearchField {
+ display:block;
+ position:absolute;
+ height:19px;
+ background:url('search_m.png') repeat-x;
+ border:none;
+ width:111px;
+ margin-left:20px;
+ padding-left:4px;
+ color: #909090;
+ outline: none;
+ font: 9pt Arial, Verdana, sans-serif;
+}
+
+#FSearchBox #MSearchField {
+ margin-left:15px;
+}
+
+#MSearchBox .right {
+ display:block;
+ position:absolute;
+ right:10px;
+ top:0px;
+ width:20px;
+ height:19px;
+ background:url('search_r.png') no-repeat;
+ background-position:left;
+}
+
+#MSearchClose {
+ display: none;
+ position: absolute;
+ top: 4px;
+ background : none;
+ border: none;
+ margin: 0px 4px 0px 0px;
+ padding: 0px 0px;
+ outline: none;
+}
+
+.left #MSearchClose {
+ left: 6px;
+}
+
+.right #MSearchClose {
+ right: 2px;
+}
+
+.MSearchBoxActive #MSearchField {
+ color: #000000;
+}
+
+/*---------------- Search filter selection */
+
+#MSearchSelectWindow {
+ display: none;
+ position: absolute;
+ left: 0; top: 0;
+ border: 1px solid #90A5CE;
+ background-color: #F9FAFC;
+ z-index: 1;
+ padding-top: 4px;
+ padding-bottom: 4px;
+ -moz-border-radius: 4px;
+ -webkit-border-top-left-radius: 4px;
+ -webkit-border-top-right-radius: 4px;
+ -webkit-border-bottom-left-radius: 4px;
+ -webkit-border-bottom-right-radius: 4px;
+ -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15);
+}
+
+.SelectItem {
+ font: 8pt Arial, Verdana, sans-serif;
+ padding-left: 2px;
+ padding-right: 12px;
+ border: 0px;
+}
+
+span.SelectionMark {
+ margin-right: 4px;
+ font-family: monospace;
+ outline-style: none;
+ text-decoration: none;
+}
+
+a.SelectItem {
+ display: block;
+ outline-style: none;
+ color: #000000;
+ text-decoration: none;
+ padding-left: 6px;
+ padding-right: 12px;
+}
+
+a.SelectItem:focus,
+a.SelectItem:active {
+ color: #000000;
+ outline-style: none;
+ text-decoration: none;
+}
+
+a.SelectItem:hover {
+ color: #FFFFFF;
+ background-color: #3D578C;
+ outline-style: none;
+ text-decoration: none;
+ cursor: pointer;
+ display: block;
+}
+
+/*---------------- Search results window */
+
+iframe#MSearchResults {
+ width: 60ex;
+ height: 15em;
+}
+
+#MSearchResultsWindow {
+ display: none;
+ position: absolute;
+ left: 0; top: 0;
+ border: 1px solid #000;
+ background-color: #EEF1F7;
+}
+
+/* ----------------------------------- */
+
+
+#SRIndex {
+ clear:both;
+ padding-bottom: 15px;
+}
+
+.SREntry {
+ font-size: 10pt;
+ padding-left: 1ex;
+}
+
+.SRPage .SREntry {
+ font-size: 8pt;
+ padding: 1px 5px;
+}
+
+body.SRPage {
+ margin: 5px 2px;
+}
+
+.SRChildren {
+ padding-left: 3ex; padding-bottom: .5em
+}
+
+.SRPage .SRChildren {
+ display: none;
+}
+
+.SRSymbol {
+ font-weight: bold;
+ color: #425E97;
+ font-family: Arial, Verdana, sans-serif;
+ text-decoration: none;
+ outline: none;
+}
+
+a.SRScope {
+ display: block;
+ color: #425E97;
+ font-family: Arial, Verdana, sans-serif;
+ text-decoration: none;
+ outline: none;
+}
+
+a.SRSymbol:focus, a.SRSymbol:active,
+a.SRScope:focus, a.SRScope:active {
+ text-decoration: underline;
+}
+
+span.SRScope {
+ padding-left: 4px;
+}
+
+.SRPage .SRStatus {
+ padding: 2px 5px;
+ font-size: 8pt;
+ font-style: italic;
+}
+
+.SRResult {
+ display: none;
+}
+
+DIV.searchresults {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+
+/*---------------- External search page results */
+
+.searchresult {
+ background-color: #F0F3F8;
+}
+
+.pages b {
+ color: white;
+ padding: 5px 5px 3px 5px;
+ background-image: url("../tab_a.png");
+ background-repeat: repeat-x;
+ text-shadow: 0 1px 1px #000000;
+}
+
+.pages {
+ line-height: 17px;
+ margin-left: 4px;
+ text-decoration: none;
+}
+
+.hl {
+ font-weight: bold;
+}
+
+#searchresults {
+ margin-bottom: 20px;
+}
+
+.searchpages {
+ margin-top: 10px;
+}
+
diff --git a/doc/ref/c++/html/search/search.js b/doc/ref/c++/html/search/search.js
new file mode 100644
index 0000000000..de9b2f6fc5
--- /dev/null
+++ b/doc/ref/c++/html/search/search.js
@@ -0,0 +1,813 @@
+// Search script generated by doxygen
+// Copyright (C) 2009 by Dimitri van Heesch.
+
+// The code in this file is loosly based on main.js, part of Natural Docs,
+// which is Copyright (C) 2003-2008 Greg Valure
+// Natural Docs is licensed under the GPL.
+
+var indexSectionsWithContent =
+{
+ 0: ":abcdefghijlmnoprstuwz~",
+ 1: "abcdfghilmprstuw",
+ 2: "g",
+ 3: "abcdfgiprst",
+ 4: "abcdefghijlmnoprstuw~",
+ 5: "cfgimoprs",
+ 6: "acgimsz",
+ 7: "anrs",
+ 8: "abcdfginoprstu",
+ 9: ":abclrst",
+ 10: "g"
+};
+
+var indexSectionNames =
+{
+ 0: "all",
+ 1: "classes",
+ 2: "namespaces",
+ 3: "files",
+ 4: "functions",
+ 5: "variables",
+ 6: "typedefs",
+ 7: "enums",
+ 8: "enumvalues",
+ 9: "related",
+ 10: "defines"
+};
+
+function convertToId(search)
+{
+ var result = '';
+ for (i=0;i<search.length;i++)
+ {
+ var c = search.charAt(i);
+ var cn = c.charCodeAt(0);
+ if (c.match(/[a-z0-9\u0080-\uFFFF]/))
+ {
+ result+=c;
+ }
+ else if (cn<16)
+ {
+ result+="_0"+cn.toString(16);
+ }
+ else
+ {
+ result+="_"+cn.toString(16);
+ }
+ }
+ return result;
+}
+
+function getXPos(item)
+{
+ var x = 0;
+ if (item.offsetWidth)
+ {
+ while (item && item!=document.body)
+ {
+ x += item.offsetLeft;
+ item = item.offsetParent;
+ }
+ }
+ return x;
+}
+
+function getYPos(item)
+{
+ var y = 0;
+ if (item.offsetWidth)
+ {
+ while (item && item!=document.body)
+ {
+ y += item.offsetTop;
+ item = item.offsetParent;
+ }
+ }
+ return y;
+}
+
+/* A class handling everything associated with the search panel.
+
+ Parameters:
+ name - The name of the global variable that will be
+ storing this instance. Is needed to be able to set timeouts.
+ resultPath - path to use for external files
+*/
+function SearchBox(name, resultsPath, inFrame, label)
+{
+ if (!name || !resultsPath) { alert("Missing parameters to SearchBox."); }
+
+ // ---------- Instance variables
+ this.name = name;
+ this.resultsPath = resultsPath;
+ this.keyTimeout = 0;
+ this.keyTimeoutLength = 500;
+ this.closeSelectionTimeout = 300;
+ this.lastSearchValue = "";
+ this.lastResultsPage = "";
+ this.hideTimeout = 0;
+ this.searchIndex = 0;
+ this.searchActive = false;
+ this.insideFrame = inFrame;
+ this.searchLabel = label;
+
+ // ----------- DOM Elements
+
+ this.DOMSearchField = function()
+ { return document.getElementById("MSearchField"); }
+
+ this.DOMSearchSelect = function()
+ { return document.getElementById("MSearchSelect"); }
+
+ this.DOMSearchSelectWindow = function()
+ { return document.getElementById("MSearchSelectWindow"); }
+
+ this.DOMPopupSearchResults = function()
+ { return document.getElementById("MSearchResults"); }
+
+ this.DOMPopupSearchResultsWindow = function()
+ { return document.getElementById("MSearchResultsWindow"); }
+
+ this.DOMSearchClose = function()
+ { return document.getElementById("MSearchClose"); }
+
+ this.DOMSearchBox = function()
+ { return document.getElementById("MSearchBox"); }
+
+ // ------------ Event Handlers
+
+ // Called when focus is added or removed from the search field.
+ this.OnSearchFieldFocus = function(isActive)
+ {
+ this.Activate(isActive);
+ }
+
+ this.OnSearchSelectShow = function()
+ {
+ var searchSelectWindow = this.DOMSearchSelectWindow();
+ var searchField = this.DOMSearchSelect();
+
+ if (this.insideFrame)
+ {
+ var left = getXPos(searchField);
+ var top = getYPos(searchField);
+ left += searchField.offsetWidth + 6;
+ top += searchField.offsetHeight;
+
+ // show search selection popup
+ searchSelectWindow.style.display='block';
+ left -= searchSelectWindow.offsetWidth;
+ searchSelectWindow.style.left = left + 'px';
+ searchSelectWindow.style.top = top + 'px';
+ }
+ else
+ {
+ var left = getXPos(searchField);
+ var top = getYPos(searchField);
+ top += searchField.offsetHeight;
+
+ // show search selection popup
+ searchSelectWindow.style.display='block';
+ searchSelectWindow.style.left = left + 'px';
+ searchSelectWindow.style.top = top + 'px';
+ }
+
+ // stop selection hide timer
+ if (this.hideTimeout)
+ {
+ clearTimeout(this.hideTimeout);
+ this.hideTimeout=0;
+ }
+ return false; // to avoid "image drag" default event
+ }
+
+ this.OnSearchSelectHide = function()
+ {
+ this.hideTimeout = setTimeout(this.name +".CloseSelectionWindow()",
+ this.closeSelectionTimeout);
+ }
+
+ // Called when the content of the search field is changed.
+ this.OnSearchFieldChange = function(evt)
+ {
+ if (this.keyTimeout) // kill running timer
+ {
+ clearTimeout(this.keyTimeout);
+ this.keyTimeout = 0;
+ }
+
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==40 || e.keyCode==13)
+ {
+ if (e.shiftKey==1)
+ {
+ this.OnSearchSelectShow();
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ child.focus();
+ return;
+ }
+ }
+ return;
+ }
+ else if (window.frames.MSearchResults.searchResults)
+ {
+ var elem = window.frames.MSearchResults.searchResults.NavNext(0);
+ if (elem) elem.focus();
+ }
+ }
+ else if (e.keyCode==27) // Escape out of the search field
+ {
+ this.DOMSearchField().blur();
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.lastSearchValue = '';
+ this.Activate(false);
+ return;
+ }
+
+ // strip whitespaces
+ var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+
+ if (searchValue != this.lastSearchValue) // search value has changed
+ {
+ if (searchValue != "") // non-empty search
+ {
+ // set timer for search update
+ this.keyTimeout = setTimeout(this.name + '.Search()',
+ this.keyTimeoutLength);
+ }
+ else // empty search field
+ {
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.lastSearchValue = '';
+ }
+ }
+ }
+
+ this.SelectItemCount = function(id)
+ {
+ var count=0;
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ count++;
+ }
+ }
+ return count;
+ }
+
+ this.SelectItemSet = function(id)
+ {
+ var i,j=0;
+ var win=this.DOMSearchSelectWindow();
+ for (i=0;i<win.childNodes.length;i++)
+ {
+ var child = win.childNodes[i]; // get span within a
+ if (child.className=='SelectItem')
+ {
+ var node = child.firstChild;
+ if (j==id)
+ {
+ node.innerHTML='&#8226;';
+ }
+ else
+ {
+ node.innerHTML='&#160;';
+ }
+ j++;
+ }
+ }
+ }
+
+ // Called when an search filter selection is made.
+ // set item with index id as the active item
+ this.OnSelectItem = function(id)
+ {
+ this.searchIndex = id;
+ this.SelectItemSet(id);
+ var searchValue = this.DOMSearchField().value.replace(/ +/g, "");
+ if (searchValue!="" && this.searchActive) // something was found -> do a search
+ {
+ this.Search();
+ }
+ }
+
+ this.OnSearchSelectKey = function(evt)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==40 && this.searchIndex<this.SelectItemCount()) // Down
+ {
+ this.searchIndex++;
+ this.OnSelectItem(this.searchIndex);
+ }
+ else if (e.keyCode==38 && this.searchIndex>0) // Up
+ {
+ this.searchIndex--;
+ this.OnSelectItem(this.searchIndex);
+ }
+ else if (e.keyCode==13 || e.keyCode==27)
+ {
+ this.OnSelectItem(this.searchIndex);
+ this.CloseSelectionWindow();
+ this.DOMSearchField().focus();
+ }
+ return false;
+ }
+
+ // --------- Actions
+
+ // Closes the results window.
+ this.CloseResultsWindow = function()
+ {
+ this.DOMPopupSearchResultsWindow().style.display = 'none';
+ this.DOMSearchClose().style.display = 'none';
+ this.Activate(false);
+ }
+
+ this.CloseSelectionWindow = function()
+ {
+ this.DOMSearchSelectWindow().style.display = 'none';
+ }
+
+ // Performs a search.
+ this.Search = function()
+ {
+ this.keyTimeout = 0;
+
+ // strip leading whitespace
+ var searchValue = this.DOMSearchField().value.replace(/^ +/, "");
+
+ var code = searchValue.toLowerCase().charCodeAt(0);
+ var idxChar = searchValue.substr(0, 1).toLowerCase();
+ if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair
+ {
+ idxChar = searchValue.substr(0, 2);
+ }
+
+ var resultsPage;
+ var resultsPageWithSearch;
+ var hasResultsPage;
+
+ var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar);
+ if (idx!=-1)
+ {
+ var hexCode=idx.toString(16);
+ resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html';
+ resultsPageWithSearch = resultsPage+'?'+escape(searchValue);
+ hasResultsPage = true;
+ }
+ else // nothing available for this search term
+ {
+ resultsPage = this.resultsPath + '/nomatches.html';
+ resultsPageWithSearch = resultsPage;
+ hasResultsPage = false;
+ }
+
+ window.frames.MSearchResults.location = resultsPageWithSearch;
+ var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow();
+
+ if (domPopupSearchResultsWindow.style.display!='block')
+ {
+ var domSearchBox = this.DOMSearchBox();
+ this.DOMSearchClose().style.display = 'inline';
+ if (this.insideFrame)
+ {
+ var domPopupSearchResults = this.DOMPopupSearchResults();
+ domPopupSearchResultsWindow.style.position = 'relative';
+ domPopupSearchResultsWindow.style.display = 'block';
+ var width = document.body.clientWidth - 8; // the -8 is for IE :-(
+ domPopupSearchResultsWindow.style.width = width + 'px';
+ domPopupSearchResults.style.width = width + 'px';
+ }
+ else
+ {
+ var domPopupSearchResults = this.DOMPopupSearchResults();
+ var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth;
+ var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1;
+ domPopupSearchResultsWindow.style.display = 'block';
+ left -= domPopupSearchResults.offsetWidth;
+ domPopupSearchResultsWindow.style.top = top + 'px';
+ domPopupSearchResultsWindow.style.left = left + 'px';
+ }
+ }
+
+ this.lastSearchValue = searchValue;
+ this.lastResultsPage = resultsPage;
+ }
+
+ // -------- Activation Functions
+
+ // Activates or deactivates the search panel, resetting things to
+ // their default values if necessary.
+ this.Activate = function(isActive)
+ {
+ if (isActive || // open it
+ this.DOMPopupSearchResultsWindow().style.display == 'block'
+ )
+ {
+ this.DOMSearchBox().className = 'MSearchBoxActive';
+
+ var searchField = this.DOMSearchField();
+
+ if (searchField.value == this.searchLabel) // clear "Search" term upon entry
+ {
+ searchField.value = '';
+ this.searchActive = true;
+ }
+ }
+ else if (!isActive) // directly remove the panel
+ {
+ this.DOMSearchBox().className = 'MSearchBoxInactive';
+ this.DOMSearchField().value = this.searchLabel;
+ this.searchActive = false;
+ this.lastSearchValue = ''
+ this.lastResultsPage = '';
+ }
+ }
+}
+
+// -----------------------------------------------------------------------
+
+// The class that handles everything on the search results page.
+function SearchResults(name)
+{
+ // The number of matches from the last run of <Search()>.
+ this.lastMatchCount = 0;
+ this.lastKey = 0;
+ this.repeatOn = false;
+
+ // Toggles the visibility of the passed element ID.
+ this.FindChildElement = function(id)
+ {
+ var parentElement = document.getElementById(id);
+ var element = parentElement.firstChild;
+
+ while (element && element!=parentElement)
+ {
+ if (element.nodeName == 'DIV' && element.className == 'SRChildren')
+ {
+ return element;
+ }
+
+ if (element.nodeName == 'DIV' && element.hasChildNodes())
+ {
+ element = element.firstChild;
+ }
+ else if (element.nextSibling)
+ {
+ element = element.nextSibling;
+ }
+ else
+ {
+ do
+ {
+ element = element.parentNode;
+ }
+ while (element && element!=parentElement && !element.nextSibling);
+
+ if (element && element!=parentElement)
+ {
+ element = element.nextSibling;
+ }
+ }
+ }
+ }
+
+ this.Toggle = function(id)
+ {
+ var element = this.FindChildElement(id);
+ if (element)
+ {
+ if (element.style.display == 'block')
+ {
+ element.style.display = 'none';
+ }
+ else
+ {
+ element.style.display = 'block';
+ }
+ }
+ }
+
+ // Searches for the passed string. If there is no parameter,
+ // it takes it from the URL query.
+ //
+ // Always returns true, since other documents may try to call it
+ // and that may or may not be possible.
+ this.Search = function(search)
+ {
+ if (!search) // get search word from URL
+ {
+ search = window.location.search;
+ search = search.substring(1); // Remove the leading '?'
+ search = unescape(search);
+ }
+
+ search = search.replace(/^ +/, ""); // strip leading spaces
+ search = search.replace(/ +$/, ""); // strip trailing spaces
+ search = search.toLowerCase();
+ search = convertToId(search);
+
+ var resultRows = document.getElementsByTagName("div");
+ var matches = 0;
+
+ var i = 0;
+ while (i < resultRows.length)
+ {
+ var row = resultRows.item(i);
+ if (row.className == "SRResult")
+ {
+ var rowMatchName = row.id.toLowerCase();
+ rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_'
+
+ if (search.length<=rowMatchName.length &&
+ rowMatchName.substr(0, search.length)==search)
+ {
+ row.style.display = 'block';
+ matches++;
+ }
+ else
+ {
+ row.style.display = 'none';
+ }
+ }
+ i++;
+ }
+ document.getElementById("Searching").style.display='none';
+ if (matches == 0) // no results
+ {
+ document.getElementById("NoMatches").style.display='block';
+ }
+ else // at least one result
+ {
+ document.getElementById("NoMatches").style.display='none';
+ }
+ this.lastMatchCount = matches;
+ return true;
+ }
+
+ // return the first item with index index or higher that is visible
+ this.NavNext = function(index)
+ {
+ var focusItem;
+ while (1)
+ {
+ var focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+ {
+ break;
+ }
+ else if (!focusItem) // last element
+ {
+ break;
+ }
+ focusItem=null;
+ index++;
+ }
+ return focusItem;
+ }
+
+ this.NavPrev = function(index)
+ {
+ var focusItem;
+ while (1)
+ {
+ var focusName = 'Item'+index;
+ focusItem = document.getElementById(focusName);
+ if (focusItem && focusItem.parentNode.parentNode.style.display=='block')
+ {
+ break;
+ }
+ else if (!focusItem) // last element
+ {
+ break;
+ }
+ focusItem=null;
+ index--;
+ }
+ return focusItem;
+ }
+
+ this.ProcessKeys = function(e)
+ {
+ if (e.type == "keydown")
+ {
+ this.repeatOn = false;
+ this.lastKey = e.keyCode;
+ }
+ else if (e.type == "keypress")
+ {
+ if (!this.repeatOn)
+ {
+ if (this.lastKey) this.repeatOn = true;
+ return false; // ignore first keypress after keydown
+ }
+ }
+ else if (e.type == "keyup")
+ {
+ this.lastKey = 0;
+ this.repeatOn = false;
+ }
+ return this.lastKey!=0;
+ }
+
+ this.Nav = function(evt,itemIndex)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) // Up
+ {
+ var newIndex = itemIndex-1;
+ var focusItem = this.NavPrev(newIndex);
+ if (focusItem)
+ {
+ var child = this.FindChildElement(focusItem.parentNode.parentNode.id);
+ if (child && child.style.display == 'block') // children visible
+ {
+ var n=0;
+ var tmpElem;
+ while (1) // search for last child
+ {
+ tmpElem = document.getElementById('Item'+newIndex+'_c'+n);
+ if (tmpElem)
+ {
+ focusItem = tmpElem;
+ }
+ else // found it!
+ {
+ break;
+ }
+ n++;
+ }
+ }
+ }
+ if (focusItem)
+ {
+ focusItem.focus();
+ }
+ else // return focus to search field
+ {
+ parent.document.getElementById("MSearchField").focus();
+ }
+ }
+ else if (this.lastKey==40) // Down
+ {
+ var newIndex = itemIndex+1;
+ var focusItem;
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem && elem.style.display == 'block') // children visible
+ {
+ focusItem = document.getElementById('Item'+itemIndex+'_c0');
+ }
+ if (!focusItem) focusItem = this.NavNext(newIndex);
+ if (focusItem) focusItem.focus();
+ }
+ else if (this.lastKey==39) // Right
+ {
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'block';
+ }
+ else if (this.lastKey==37) // Left
+ {
+ var item = document.getElementById('Item'+itemIndex);
+ var elem = this.FindChildElement(item.parentNode.parentNode.id);
+ if (elem) elem.style.display = 'none';
+ }
+ else if (this.lastKey==27) // Escape
+ {
+ parent.searchBox.CloseResultsWindow();
+ parent.document.getElementById("MSearchField").focus();
+ }
+ else if (this.lastKey==13) // Enter
+ {
+ return true;
+ }
+ return false;
+ }
+
+ this.NavChild = function(evt,itemIndex,childIndex)
+ {
+ var e = (evt) ? evt : window.event; // for IE
+ if (e.keyCode==13) return true;
+ if (!this.ProcessKeys(e)) return false;
+
+ if (this.lastKey==38) // Up
+ {
+ if (childIndex>0)
+ {
+ var newIndex = childIndex-1;
+ document.getElementById('Item'+itemIndex+'_c'+newIndex).focus();
+ }
+ else // already at first child, jump to parent
+ {
+ document.getElementById('Item'+itemIndex).focus();
+ }
+ }
+ else if (this.lastKey==40) // Down
+ {
+ var newIndex = childIndex+1;
+ var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex);
+ if (!elem) // last child, jump to parent next parent
+ {
+ elem = this.NavNext(itemIndex+1);
+ }
+ if (elem)
+ {
+ elem.focus();
+ }
+ }
+ else if (this.lastKey==27) // Escape
+ {
+ parent.searchBox.CloseResultsWindow();
+ parent.document.getElementById("MSearchField").focus();
+ }
+ else if (this.lastKey==13) // Enter
+ {
+ return true;
+ }
+ return false;
+ }
+}
+
+function setKeyActions(elem,action)
+{
+ elem.setAttribute('onkeydown',action);
+ elem.setAttribute('onkeypress',action);
+ elem.setAttribute('onkeyup',action);
+}
+
+function setClassAttr(elem,attr)
+{
+ elem.setAttribute('class',attr);
+ elem.setAttribute('className',attr);
+}
+
+function createResults()
+{
+ var results = document.getElementById("SRResults");
+ for (var e=0; e<searchData.length; e++)
+ {
+ var id = searchData[e][0];
+ var srResult = document.createElement('div');
+ srResult.setAttribute('id','SR_'+id);
+ setClassAttr(srResult,'SRResult');
+ var srEntry = document.createElement('div');
+ setClassAttr(srEntry,'SREntry');
+ var srLink = document.createElement('a');
+ srLink.setAttribute('id','Item'+e);
+ setKeyActions(srLink,'return searchResults.Nav(event,'+e+')');
+ setClassAttr(srLink,'SRSymbol');
+ srLink.innerHTML = searchData[e][1][0];
+ srEntry.appendChild(srLink);
+ if (searchData[e][1].length==2) // single result
+ {
+ srLink.setAttribute('href',searchData[e][1][1][0]);
+ if (searchData[e][1][1][1])
+ {
+ srLink.setAttribute('target','_parent');
+ }
+ var srScope = document.createElement('span');
+ setClassAttr(srScope,'SRScope');
+ srScope.innerHTML = searchData[e][1][1][2];
+ srEntry.appendChild(srScope);
+ }
+ else // multiple results
+ {
+ srLink.setAttribute('href','javascript:searchResults.Toggle("SR_'+id+'")');
+ var srChildren = document.createElement('div');
+ setClassAttr(srChildren,'SRChildren');
+ for (var c=0; c<searchData[e][1].length-1; c++)
+ {
+ var srChild = document.createElement('a');
+ srChild.setAttribute('id','Item'+e+'_c'+c);
+ setKeyActions(srChild,'return searchResults.NavChild(event,'+e+','+c+')');
+ setClassAttr(srChild,'SRScope');
+ srChild.setAttribute('href',searchData[e][1][c+1][0]);
+ if (searchData[e][1][c+1][1])
+ {
+ srChild.setAttribute('target','_parent');
+ }
+ srChild.innerHTML = searchData[e][1][c+1][2];
+ srChildren.appendChild(srChild);
+ }
+ srEntry.appendChild(srChildren);
+ }
+ srResult.appendChild(srEntry);
+ results.appendChild(srResult);
+ }
+}
+
diff --git a/doc/ref/c++/html/search/search_l.png b/doc/ref/c++/html/search/search_l.png
new file mode 100644
index 0000000000..c872f4da4a
--- /dev/null
+++ b/doc/ref/c++/html/search/search_l.png
Binary files differ
diff --git a/doc/ref/c++/html/search/search_m.png b/doc/ref/c++/html/search/search_m.png
new file mode 100644
index 0000000000..b429a16ba6
--- /dev/null
+++ b/doc/ref/c++/html/search/search_m.png
Binary files differ
diff --git a/doc/ref/c++/html/search/search_r.png b/doc/ref/c++/html/search/search_r.png
new file mode 100644
index 0000000000..97ee8b4396
--- /dev/null
+++ b/doc/ref/c++/html/search/search_r.png
Binary files differ
diff --git a/doc/ref/c++/html/search/typedefs_0.html b/doc/ref/c++/html/search/typedefs_0.html
new file mode 100644
index 0000000000..8d6b78fe9d
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/typedefs_0.js b/doc/ref/c++/html/search/typedefs_0.js
new file mode 100644
index 0000000000..5c389e5e3a
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_0.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['authproperty',['AuthProperty',['../namespacegrpc.html#a8e3a499d0002aae3afd1cae08f44a9ee',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/typedefs_1.html b/doc/ref/c++/html/search/typedefs_1.html
new file mode 100644
index 0000000000..455fe2b2b9
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/typedefs_1.js b/doc/ref/c++/html/search/typedefs_1.js
new file mode 100644
index 0000000000..eb6e4588bc
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['codedinputstream',['CodedInputStream',['../namespacegrpc_1_1protobuf_1_1io.html#a8be5a5d13d5471daee11dd8203973bf3',1,'grpc::protobuf::io']]]
+];
diff --git a/doc/ref/c++/html/search/typedefs_2.html b/doc/ref/c++/html/search/typedefs_2.html
new file mode 100644
index 0000000000..fac5dbac55
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/typedefs_2.js b/doc/ref/c++/html/search/typedefs_2.js
new file mode 100644
index 0000000000..4f2edc1ffa
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_2.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['genericclientasyncreaderwriter',['GenericClientAsyncReaderWriter',['../namespacegrpc.html#aba53fb6f2502caa167e9528e5c560539',1,'grpc']]],
+ ['genericserverasyncreaderwriter',['GenericServerAsyncReaderWriter',['../namespacegrpc.html#a7b3db9e9e4d0c7faf701c9ebd455196a',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/typedefs_3.html b/doc/ref/c++/html/search/typedefs_3.html
new file mode 100644
index 0000000000..9cb52e4673
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/typedefs_3.js b/doc/ref/c++/html/search/typedefs_3.js
new file mode 100644
index 0000000000..544cbfaa09
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_3.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['int64',['int64',['../namespacegrpc_1_1protobuf.html#ad614bff24fe4674ca81af74c769a7b32',1,'grpc::protobuf']]]
+];
diff --git a/doc/ref/c++/html/search/typedefs_4.html b/doc/ref/c++/html/search/typedefs_4.html
new file mode 100644
index 0000000000..64c6ccef13
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/typedefs_4.js b/doc/ref/c++/html/search/typedefs_4.js
new file mode 100644
index 0000000000..59eb65596f
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_4.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['message',['Message',['../namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c',1,'grpc::protobuf']]]
+];
diff --git a/doc/ref/c++/html/search/typedefs_5.html b/doc/ref/c++/html/search/typedefs_5.html
new file mode 100644
index 0000000000..e014348b9a
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/typedefs_5.js b/doc/ref/c++/html/search/typedefs_5.js
new file mode 100644
index 0000000000..199297f283
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['string',['string',['../namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203',1,'grpc']]]
+];
diff --git a/doc/ref/c++/html/search/typedefs_6.html b/doc/ref/c++/html/search/typedefs_6.html
new file mode 100644
index 0000000000..25d6aef5d4
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="typedefs_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/typedefs_6.js b/doc/ref/c++/html/search/typedefs_6.js
new file mode 100644
index 0000000000..8cdae6f76f
--- /dev/null
+++ b/doc/ref/c++/html/search/typedefs_6.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['zerocopyinputstream',['ZeroCopyInputStream',['../namespacegrpc_1_1protobuf_1_1io.html#ae16bb38d6b730de308f0be4eb43931b4',1,'grpc::protobuf::io']]],
+ ['zerocopyoutputstream',['ZeroCopyOutputStream',['../namespacegrpc_1_1protobuf_1_1io.html#aafcf83341d287d00418952374bc82ce1',1,'grpc::protobuf::io']]]
+];
diff --git a/doc/ref/c++/html/search/variables_0.html b/doc/ref/c++/html/search/variables_0.html
new file mode 100644
index 0000000000..1b8adc9b33
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_0.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_0.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_0.js b/doc/ref/c++/html/search/variables_0.js
new file mode 100644
index 0000000000..8fd5a3159f
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_0.js
@@ -0,0 +1,6 @@
+var searchData=
+[
+ ['call',['call',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72',1,'grpc::MethodHandler::HandlerParameter']]],
+ ['cancelled',['CANCELLED',['../classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab',1,'grpc::Status']]],
+ ['cert_5fchain',['cert_chain',['../structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e',1,'grpc::SslServerCredentialsOptions::PemKeyCertPair']]]
+];
diff --git a/doc/ref/c++/html/search/variables_1.html b/doc/ref/c++/html/search/variables_1.html
new file mode 100644
index 0000000000..78f63cd1eb
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_1.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_1.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_1.js b/doc/ref/c++/html/search/variables_1.js
new file mode 100644
index 0000000000..1018b10c6a
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_1.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['force_5fclient_5fauth',['force_client_auth',['../structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e',1,'grpc::SslServerCredentialsOptions']]]
+];
diff --git a/doc/ref/c++/html/search/variables_2.html b/doc/ref/c++/html/search/variables_2.html
new file mode 100644
index 0000000000..ea80d20140
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_2.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_2.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_2.js b/doc/ref/c++/html/search/variables_2.js
new file mode 100644
index 0000000000..1c1157f26c
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_2.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['got_5fmessage',['got_message',['../classgrpc_1_1_call_op_recv_message.html#a95f94e74f704a7f40e1f2e30aba24c57',1,'grpc::CallOpRecvMessage::got_message()'],['../classgrpc_1_1_call_op_generic_recv_message.html#a1dc0ca6159bc74ec6cbfeacb06c697a0',1,'grpc::CallOpGenericRecvMessage::got_message()']]]
+];
diff --git a/doc/ref/c++/html/search/variables_3.html b/doc/ref/c++/html/search/variables_3.html
new file mode 100644
index 0000000000..0dca26f47b
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_3.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_3.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_3.js b/doc/ref/c++/html/search/variables_3.js
new file mode 100644
index 0000000000..95de9e8580
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_3.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['initial_5fmetadata_5f',['initial_metadata_',['../classgrpc_1_1_call_op_send_initial_metadata.html#a032d474971352a0f3ca5b1a468fa5fd4',1,'grpc::CallOpSendInitialMetadata']]],
+ ['initial_5fmetadata_5fcount_5f',['initial_metadata_count_',['../classgrpc_1_1_call_op_send_initial_metadata.html#a19f3366cf32ceb0199e7f636f870dd63',1,'grpc::CallOpSendInitialMetadata']]]
+];
diff --git a/doc/ref/c++/html/search/variables_4.html b/doc/ref/c++/html/search/variables_4.html
new file mode 100644
index 0000000000..400e8e9b41
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_4.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_4.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_4.js b/doc/ref/c++/html/search/variables_4.js
new file mode 100644
index 0000000000..f04a7b799e
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_4.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['max_5fmessage_5fsize',['max_message_size',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756',1,'grpc::MethodHandler::HandlerParameter']]],
+ ['max_5fmessage_5fsize_5f',['max_message_size_',['../classgrpc_1_1_call_op_set_interface.html#a06354e63efdbbd34fa18270490aaabbf',1,'grpc::CallOpSetInterface']]]
+];
diff --git a/doc/ref/c++/html/search/variables_5.html b/doc/ref/c++/html/search/variables_5.html
new file mode 100644
index 0000000000..7f1241f94b
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_5.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_5.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_5.js b/doc/ref/c++/html/search/variables_5.js
new file mode 100644
index 0000000000..0791dd3792
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_5.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['ok',['OK',['../classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc',1,'grpc::Status']]]
+];
diff --git a/doc/ref/c++/html/search/variables_6.html b/doc/ref/c++/html/search/variables_6.html
new file mode 100644
index 0000000000..7536df8d5a
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_6.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_6.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_6.js b/doc/ref/c++/html/search/variables_6.js
new file mode 100644
index 0000000000..7d573ddd67
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_6.js
@@ -0,0 +1,8 @@
+var searchData=
+[
+ ['pem_5fcert_5fchain',['pem_cert_chain',['../structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b',1,'grpc::SslCredentialsOptions']]],
+ ['pem_5fkey_5fcert_5fpairs',['pem_key_cert_pairs',['../structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d',1,'grpc::SslServerCredentialsOptions']]],
+ ['pem_5fprivate_5fkey',['pem_private_key',['../structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e',1,'grpc::SslCredentialsOptions']]],
+ ['pem_5froot_5fcerts',['pem_root_certs',['../structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869',1,'grpc::SslCredentialsOptions::pem_root_certs()'],['../structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74',1,'grpc::SslServerCredentialsOptions::pem_root_certs()']]],
+ ['private_5fkey',['private_key',['../structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050',1,'grpc::SslServerCredentialsOptions::PemKeyCertPair']]]
+];
diff --git a/doc/ref/c++/html/search/variables_7.html b/doc/ref/c++/html/search/variables_7.html
new file mode 100644
index 0000000000..66186a6994
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_7.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_7.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_7.js b/doc/ref/c++/html/search/variables_7.js
new file mode 100644
index 0000000000..a2b74dbedb
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_7.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['request',['request',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4',1,'grpc::MethodHandler::HandlerParameter']]]
+];
diff --git a/doc/ref/c++/html/search/variables_8.html b/doc/ref/c++/html/search/variables_8.html
new file mode 100644
index 0000000000..aa13bf24a5
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_8.html
@@ -0,0 +1,26 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html><head><title></title>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta name="generator" content="Doxygen 1.8.6">
+<link rel="stylesheet" type="text/css" href="search.css"/>
+<script type="text/javascript" src="variables_8.js"></script>
+<script type="text/javascript" src="search.js"></script>
+</head>
+<body class="SRPage">
+<div id="SRIndex">
+<div class="SRStatus" id="Loading">Loading...</div>
+<div id="SRResults"></div>
+<script type="text/javascript"><!--
+createResults();
+--></script>
+<div class="SRStatus" id="Searching">Searching...</div>
+<div class="SRStatus" id="NoMatches">No Matches</div>
+<script type="text/javascript"><!--
+document.getElementById("Loading").style.display="none";
+document.getElementById("NoMatches").style.display="none";
+var searchResults = new SearchResults("searchResults");
+searchResults.Search();
+--></script>
+</div>
+</body>
+</html>
diff --git a/doc/ref/c++/html/search/variables_8.js b/doc/ref/c++/html/search/variables_8.js
new file mode 100644
index 0000000000..537e235ab1
--- /dev/null
+++ b/doc/ref/c++/html/search/variables_8.js
@@ -0,0 +1,5 @@
+var searchData=
+[
+ ['send_5f',['send_',['../classgrpc_1_1_call_op_send_initial_metadata.html#a2e867bf1e2a14f51fbda7ffe4a9d0e30',1,'grpc::CallOpSendInitialMetadata']]],
+ ['server_5fcontext',['server_context',['../structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c',1,'grpc::MethodHandler::HandlerParameter']]]
+];
diff --git a/doc/ref/c++/html/serialization__traits_8h.html b/doc/ref/c++/html/serialization__traits_8h.html
new file mode 100644
index 0000000000..3bb06b3f02
--- /dev/null
+++ b/doc/ref/c++/html/serialization__traits_8h.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/serialization_traits.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">serialization_traits.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="serialization__traits_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits&lt; Message, UnusedButHereForPartialTemplateSpecialization &gt;</a></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Defines how to serialize and deserialize some type. <a href="classgrpc_1_1_serialization_traits.html#details">More...</a><br/></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/serialization__traits_8h_source.html b/doc/ref/c++/html/serialization__traits_8h_source.html
new file mode 100644
index 0000000000..e9f7a37d17
--- /dev/null
+++ b/doc/ref/c++/html/serialization__traits_8h_source.html
@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/serialization_traits.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">serialization_traits.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="serialization__traits_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_SERIALIZATION_TRAITS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_SERIALIZATION_TRAITS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">// bool* own_buffer);</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"></span><span class="keyword">template</span> &lt;<span class="keyword">class </span><a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a>,</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">class </span>UnusedButHereForPartialTemplateSpecialization = <span class="keywordtype">void</span>&gt;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classgrpc_1_1_serialization_traits.html"> 64</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_serialization_traits.html">SerializationTraits</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_SERIALIZATION_TRAITS_H</span></div>
+<div class="ttc" id="classgrpc_1_1_serialization_traits_html"><div class="ttname"><a href="classgrpc_1_1_serialization_traits.html">grpc::SerializationTraits</a></div><div class="ttdoc">Defines how to serialize and deserialize some type. </div><div class="ttdef"><b>Definition:</b> serialization_traits.h:64</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_html_a58557bfd4af54f1c54a6de69ab1fb43c"><div class="ttname"><a href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a></div><div class="ttdeci">::google::protobuf::Message Message</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:60</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server_8h.html b/doc/ref/c++/html/server_8h.html
new file mode 100644
index 0000000000..fda7ffe358
--- /dev/null
+++ b/doc/ref/c++/html/server_8h.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">server.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;list&gt;</code><br/>
+<code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;<a class="el" href="completion__queue_8h_source.html">grpc++/completion_queue.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="call_8h_source.html">grpc++/impl/call.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="grpc__library_8h_source.html">grpc++/impl/grpc_library.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync_8h_source.html">grpc++/impl/sync.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+</div>
+<p><a href="server_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server.html">grpc::Server</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server_8h_source.html b/doc/ref/c++/html/server_8h_source.html
new file mode 100644
index 0000000000..82b5358a7b
--- /dev/null
+++ b/doc/ref/c++/html/server_8h_source.html
@@ -0,0 +1,373 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">server.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="server_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_SERVER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_SERVER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="completion__queue_8h.html">grpc++/completion_queue.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="call_8h.html">grpc++/impl/call.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc__library_8h.html">grpc++/impl/grpc_library.h</a>&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="sync_8h.html">grpc++/impl/sync.h</a>&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">struct </span>grpc_server;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">class </span>AsynchronousService;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">class </span>GenericServerContext;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">class </span>AsyncGenericService;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">class </span>RpcService;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">class </span>RpcServiceMethod;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">class </span>ServerAsyncStreamingInterface;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">class </span>ServerCredentials;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">class </span>ThreadPoolInterface;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment">// Currently it only supports handling rpcs in a single thread.</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server.html"> 61</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server.html">Server</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_grpc_library.html">GrpcLibrary</a>, <span class="keyword">private</span> <a class="code" href="classgrpc_1_1_call_hook.html">CallHook</a> {</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2">~Server</a>();</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// Shutdown the server, block until all rpc processing finishes.</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server.html#a777a9c8873ae4969585083e0e62482dc">Shutdown</a>();</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// Block waiting for all work to complete (the server must either</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">// be shutting down or some other thread must call Shutdown for this</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// function to ever return)</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server.html#a6f1ec2700c94637813178a5b5f71d6d5">Wait</a>();</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server.html#afa12bc5912105e1966887391881de595"> 74</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server.html#a9f65421947ee8cbae15ff96b44f6d532"> 75</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a>;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server.html#a8c2db91f514d534f06396d90c1b1f2c4"> 76</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_builder.html">ServerBuilder</a>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">class </span>SyncRequest;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">class </span>AsyncRequest;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keyword">class </span>ShutdownRequest;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">// ServerBuilder use only</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classgrpc_1_1_server.html">Server</a>(<a class="code" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a>* thread_pool, <span class="keywordtype">bool</span> thread_pool_owned,</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">int</span> max_message_size);</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">// Register a service. This call does not take ownership of the service.</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">// The service must exist for the lifetime of the Server instance.</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordtype">bool</span> RegisterService(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> *host, <a class="code" href="classgrpc_1_1_rpc_service.html">RpcService</a>* service);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">bool</span> RegisterAsyncService(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> *host, <a class="code" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a>* service);</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">void</span> RegisterAsyncGenericService(<a class="code" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a>* service);</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">// Add a listening port. Can be called multiple times.</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">int</span> AddListeningPort(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; addr, <a class="code" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a>* creds);</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">// Start the server.</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordtype">bool</span> Start();</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordtype">void</span> HandleQueueClosed();</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">void</span> RunRpc();</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordtype">void</span> ScheduleCallback();</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">void</span> PerformOpsOnCall(<a class="code" href="classgrpc_1_1_call_op_set_interface.html">CallOpSetInterface</a>* ops, <a class="code" href="classgrpc_1_1_call.html">Call</a>* call) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keyword">class </span>BaseAsyncRequest : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_completion_queue_tag.html">CompletionQueueTag</a> {</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; BaseAsyncRequest(<a class="code" href="classgrpc_1_1_server.html">Server</a>* server, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* context,</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a>* stream,</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* call_cq, <span class="keywordtype">void</span>* tag);</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keyword">virtual</span> ~BaseAsyncRequest();</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordtype">bool</span> FinalizeResult(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* status) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="classgrpc_1_1_server.html">Server</a>* <span class="keyword">const</span> server_;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* <span class="keyword">const</span> context_;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a>* <span class="keyword">const</span> stream_;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* <span class="keyword">const</span> call_cq_;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">void</span>* <span class="keyword">const</span> tag_;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; grpc_call* call_;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; grpc_metadata_array initial_metadata_array_;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; };</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">class </span>RegisteredAsyncRequest : <span class="keyword">public</span> BaseAsyncRequest {</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; RegisteredAsyncRequest(<a class="code" href="classgrpc_1_1_server.html">Server</a>* server, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* context,</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a>* stream,</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* call_cq, <span class="keywordtype">void</span>* tag);</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="comment">// uses BaseAsyncRequest::FinalizeResult</span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordtype">void</span> IssueRequest(<span class="keywordtype">void</span>* registered_method, grpc_byte_buffer** payload,</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>* notification_cq);</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; };</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">class </span>NoPayloadAsyncRequest <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> RegisteredAsyncRequest {</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; NoPayloadAsyncRequest(<span class="keywordtype">void</span>* registered_method, Server* server,</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; ServerContext* context,</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; ServerAsyncStreamingInterface* stream,</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; CompletionQueue* call_cq,</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; ServerCompletionQueue* notification_cq, <span class="keywordtype">void</span>* tag)</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; : RegisteredAsyncRequest(server, context, stream, call_cq, tag) {</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; IssueRequest(registered_method, <span class="keyword">nullptr</span>, notification_cq);</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; }</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="comment">// uses RegisteredAsyncRequest::FinalizeResult</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; };</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> Message&gt;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <span class="keyword">class </span>PayloadAsyncRequest <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> RegisteredAsyncRequest {</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; PayloadAsyncRequest(<span class="keywordtype">void</span>* registered_method, Server* server,</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; ServerContext* context,</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; ServerAsyncStreamingInterface* stream,</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; CompletionQueue* call_cq,</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; ServerCompletionQueue* notification_cq, <span class="keywordtype">void</span>* tag,</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a>* request)</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; : RegisteredAsyncRequest(server, context, stream, call_cq, tag),</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; request_(request) {</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; IssueRequest(registered_method, &amp;payload_, notification_cq);</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; }</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keywordtype">bool</span> FinalizeResult(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* status) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordtype">bool</span> serialization_status =</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; *status &amp;&amp; payload_ &amp;&amp;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; SerializationTraits&lt;Message&gt;::Deserialize(payload_, request_,</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; server_-&gt;max_message_size_)</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; .ok();</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="keywordtype">bool</span> ret = RegisteredAsyncRequest::FinalizeResult(tag, status);</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; *status = serialization_status &amp;&amp; *status;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">return</span> ret;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; }</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; grpc_byte_buffer* payload_;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a>* <span class="keyword">const</span> request_;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; };</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keyword">class </span>GenericAsyncRequest <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> BaseAsyncRequest {</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; GenericAsyncRequest(Server* server, GenericServerContext* context,</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; ServerAsyncStreamingInterface* stream,</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; CompletionQueue* call_cq,</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; ServerCompletionQueue* notification_cq, <span class="keywordtype">void</span>* tag);</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="keywordtype">bool</span> FinalizeResult(<span class="keywordtype">void</span>** tag, <span class="keywordtype">bool</span>* status) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a>;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; grpc_call_details call_details_;</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; };</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> Message&gt;</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordtype">void</span> RequestAsyncCall(<span class="keywordtype">void</span>* registered_method, ServerContext* context,</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; ServerAsyncStreamingInterface* stream,</div>
+<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; CompletionQueue* call_cq,</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; ServerCompletionQueue* notification_cq, <span class="keywordtype">void</span>* tag,</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a>* message) {</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">new</span> PayloadAsyncRequest&lt;Message&gt;(registered_method, <span class="keyword">this</span>, context, stream,</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; call_cq, notification_cq, tag, message);</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; }</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordtype">void</span> RequestAsyncCall(<span class="keywordtype">void</span>* registered_method, ServerContext* context,</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; ServerAsyncStreamingInterface* stream,</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; CompletionQueue* call_cq,</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; ServerCompletionQueue* notification_cq, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keyword">new</span> NoPayloadAsyncRequest(registered_method, <span class="keyword">this</span>, context, stream, call_cq,</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; notification_cq, tag);</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keywordtype">void</span> RequestAsyncGenericCall(GenericServerContext* context,</div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; ServerAsyncStreamingInterface* stream,</div>
+<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; CompletionQueue* call_cq,</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; ServerCompletionQueue* notification_cq,</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keyword">new</span> GenericAsyncRequest(<span class="keyword">this</span>, context, stream, call_cq, notification_cq,</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; tag);</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; }</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <span class="keyword">const</span> <span class="keywordtype">int</span> max_message_size_;</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="comment">// Completion queue.</span></div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; CompletionQueue cq_;</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;</div>
+<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="comment">// Sever status</span></div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="classgrpc_1_1mutex.html">grpc::mutex</a> mu_;</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keywordtype">bool</span> started_;</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordtype">bool</span> shutdown_;</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="comment">// The number of threads which are running callbacks.</span></div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; <span class="keywordtype">int</span> num_running_cb_;</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a> callback_cv_;</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; std::list&lt;SyncRequest&gt;* sync_methods_;</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;</div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="comment">// Pointer to the c grpc server.</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; grpc_server* <span class="keyword">const</span> server_;</div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div>
+<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; ThreadPoolInterface* thread_pool_;</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="comment">// Whether the thread pool is created and owned by the server.</span></div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordtype">bool</span> thread_pool_owned_;</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;};</div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;</div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="preprocessor">#endif // GRPCXX_SERVER_H</span></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_tag_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue_tag.html">grpc::CompletionQueueTag</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:75</div></div>
+<div class="ttc" id="classgrpc_1_1_server_html_a777a9c8873ae4969585083e0e62482dc"><div class="ttname"><a href="classgrpc_1_1_server.html#a777a9c8873ae4969585083e0e62482dc">grpc::Server::Shutdown</a></div><div class="ttdeci">void Shutdown()</div></div>
+<div class="ttc" id="completion__queue_8h_html"><div class="ttname"><a href="completion__queue_8h.html">completion_queue.h</a></div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_interface_html"><div class="ttname"><a href="classgrpc_1_1_call_op_set_interface.html">grpc::CallOpSetInterface</a></div><div class="ttdoc">An abstract collection of call ops, used to generate the grpc_call_op structure to pass down to the l...</div><div class="ttdef"><b>Definition:</b> call.h:482</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html">grpc::AsynchronousService</a></div><div class="ttdef"><b>Definition:</b> service_type.h:68</div></div>
+<div class="ttc" id="classgrpc_1_1mutex_html"><div class="ttname"><a href="classgrpc_1_1mutex.html">grpc::mutex</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:45</div></div>
+<div class="ttc" id="grpc__library_8h_html"><div class="ttname"><a href="grpc__library_8h.html">grpc_library.h</a></div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_streaming_interface_html"><div class="ttname"><a href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></div><div class="ttdef"><b>Definition:</b> service_type.h:57</div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_async_generic_service_html"><div class="ttname"><a href="classgrpc_1_1_async_generic_service.html">grpc::AsyncGenericService</a></div><div class="ttdef"><b>Definition:</b> async_generic_service.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1_thread_pool_interface_html"><div class="ttname"><a href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></div><div class="ttdef"><b>Definition:</b> thread_pool_interface.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_server_html_aa13591ff1bb2c5d871778189b391feb2"><div class="ttname"><a href="classgrpc_1_1_server.html#aa13591ff1bb2c5d871778189b391feb2">grpc::Server::~Server</a></div><div class="ttdeci">~Server()</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html"><div class="ttname"><a href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:84</div></div>
+<div class="ttc" id="classgrpc_1_1_grpc_library_html"><div class="ttname"><a href="classgrpc_1_1_grpc_library.html">grpc::GrpcLibrary</a></div><div class="ttdef"><b>Definition:</b> grpc_library.h:41</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_html"><div class="ttname"><a href="classgrpc_1_1_rpc_service.html">grpc::RpcService</a></div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:227</div></div>
+<div class="ttc" id="classgrpc_1_1_server_credentials_html"><div class="ttname"><a href="classgrpc_1_1_server_credentials.html">grpc::ServerCredentials</a></div><div class="ttdef"><b>Definition:</b> server_credentials.h:48</div></div>
+<div class="ttc" id="classgrpc_1_1_server_html"><div class="ttname"><a href="classgrpc_1_1_server.html">grpc::Server</a></div><div class="ttdef"><b>Definition:</b> server.h:61</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_server_html_a6f1ec2700c94637813178a5b5f71d6d5"><div class="ttname"><a href="classgrpc_1_1_server.html#a6f1ec2700c94637813178a5b5f71d6d5">grpc::Server::Wait</a></div><div class="ttdeci">void Wait()</div></div>
+<div class="ttc" id="call_8h_html"><div class="ttname"><a href="call_8h.html">call.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="sync_8h_html"><div class="ttname"><a href="sync_8h.html">sync.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_server_completion_queue.html">grpc::ServerCompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:162</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_call_hook_html"><div class="ttname"><a href="classgrpc_1_1_call_hook.html">grpc::CallHook</a></div><div class="ttdef"><b>Definition:</b> call.h:558</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html"><div class="ttname"><a href="classgrpc_1_1_server_builder.html">grpc::ServerBuilder</a></div><div class="ttdef"><b>Definition:</b> server_builder.h:54</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_html_a58557bfd4af54f1c54a6de69ab1fb43c"><div class="ttname"><a href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a></div><div class="ttdeci">::google::protobuf::Message Message</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:60</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server__builder_8h.html b/doc/ref/c++/html/server__builder_8h.html
new file mode 100644
index 0000000000..20fef5d97c
--- /dev/null
+++ b/doc/ref/c++/html/server__builder_8h.html
@@ -0,0 +1,119 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server_builder.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">server_builder.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;vector&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+</div>
+<p><a href="server__builder_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_builder.html">grpc::ServerBuilder</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server__builder_8h_source.html b/doc/ref/c++/html/server__builder_8h_source.html
new file mode 100644
index 0000000000..757aac9a3c
--- /dev/null
+++ b/doc/ref/c++/html/server__builder_8h_source.html
@@ -0,0 +1,256 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server_builder.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">server_builder.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="server__builder_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_SERVER_BUILDER_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_SERVER_BUILDER_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">class </span>AsyncGenericService;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">class </span>AsynchronousService;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span>CompletionQueue;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">class </span>RpcService;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">class </span>Server;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">class </span>ServerCompletionQueue;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">class </span>ServerCredentials;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">class </span>SynchronousService;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">class </span>ThreadPoolInterface;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_builder.html"> 54</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_builder.html">ServerBuilder</a> {</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classgrpc_1_1_server_builder.html#a208346e343cd01351492f0cace59b242">ServerBuilder</a>();</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="comment">// Register a service. This call does not take ownership of the service.</span></div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">// The service must exist for the lifetime of the Server instance returned by</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="comment">// BuildAndStart().</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="comment">// Matches requests with any :authority</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66">RegisterService</a>(<a class="code" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a>* service);</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="comment">// Register an asynchronous service.</span></div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="comment">// This call does not take ownership of the service or completion queue.</span></div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">// The service and completion queuemust exist for the lifetime of the Server</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">// instance returned by BuildAndStart().</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// Matches requests with any :authority</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#a2da69a943b10839d6993f9b292aaf578">RegisterAsyncService</a>(<a class="code" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a>* service);</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">// Register a generic service.</span></div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">// Matches requests with any :authority</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#ac62b0aa4c0448907e02d15386d58ef86">RegisterAsyncGenericService</a>(<a class="code" href="classgrpc_1_1_async_generic_service.html">AsyncGenericService</a>* service);</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="comment">// Register a service. This call does not take ownership of the service.</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="comment">// The service must exist for the lifetime of the Server instance returned by</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="comment">// BuildAndStart().</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="comment">// Only matches requests with :authority \a host</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66">RegisterService</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; host, </div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a>* service);</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="comment">// Register an asynchronous service.</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="comment">// This call does not take ownership of the service or completion queue.</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="comment">// The service and completion queuemust exist for the lifetime of the Server</span></div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">// instance returned by BuildAndStart().</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">// Only matches requests with :authority \a host</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#a2da69a943b10839d6993f9b292aaf578">RegisterAsyncService</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; host, </div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a>* service);</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">// Set max message size in bytes.</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9"> 91</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9">SetMaxMessageSize</a>(<span class="keywordtype">int</span> max_message_size) {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; max_message_size_ = max_message_size;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; }</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="comment">// Add a listening port. Can be called multiple times.</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#a256e035e62b43cd79137abf7c066902a">AddListeningPort</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; addr,</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; std::shared_ptr&lt;ServerCredentials&gt; creds,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordtype">int</span>* selected_port = <span class="keyword">nullptr</span>);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="comment">// Set the thread pool used for running appliation rpc handlers.</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="comment">// Does not take ownership.</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_builder.html#aea5dd313149029114c60571e5ee8b4cd">SetThreadPool</a>(<a class="code" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a>* thread_pool);</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="comment">// Add a completion queue for handling asynchronous services</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">// Caller is required to keep this completion queue live until calling</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// BuildAndStart()</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; std::unique_ptr&lt;ServerCompletionQueue&gt; <a class="code" href="classgrpc_1_1_server_builder.html#accbbd95080ca974e84fa1d4cb2ea9518">AddCompletionQueue</a>();</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="comment">// Return a running server which is ready for processing rpcs.</span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; std::unique_ptr&lt;Server&gt; <a class="code" href="classgrpc_1_1_server_builder.html#af284cd39b185043e8e92405c1ae0f310">BuildAndStart</a>();</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">struct </span>Port {</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> addr;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; std::shared_ptr&lt;ServerCredentials&gt; creds;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">int</span>* selected_port;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; };</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keyword">typedef</span> std::unique_ptr&lt;grpc::string&gt; HostString;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt; <span class="keyword">struct </span>NamedService {</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keyword">explicit</span> NamedService(T* s) : service(s) {}</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; NamedService(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; h, T *s)</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; : host(new grpc::<a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">string</a>(h)), service(s) {}</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; HostString host;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; T* service;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; };</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordtype">int</span> max_message_size_;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; std::vector&lt;std::unique_ptr&lt;NamedService&lt;RpcService&gt;&gt;&gt; services_;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; std::vector&lt;std::unique_ptr&lt;NamedService&lt;AsynchronousService&gt;&gt;&gt; async_services_;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; std::vector&lt;Port&gt; ports_;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; std::vector&lt;ServerCompletionQueue*&gt; cqs_;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; std::shared_ptr&lt;ServerCredentials&gt; creds_;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; AsyncGenericService* generic_service_;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; ThreadPoolInterface* thread_pool_;</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;};</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="preprocessor">#endif // GRPCXX_SERVER_BUILDER_H</span></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_a208346e343cd01351492f0cace59b242"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#a208346e343cd01351492f0cace59b242">grpc::ServerBuilder::ServerBuilder</a></div><div class="ttdeci">ServerBuilder()</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_a2da69a943b10839d6993f9b292aaf578"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#a2da69a943b10839d6993f9b292aaf578">grpc::ServerBuilder::RegisterAsyncService</a></div><div class="ttdeci">void RegisterAsyncService(AsynchronousService *service)</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html">grpc::AsynchronousService</a></div><div class="ttdef"><b>Definition:</b> service_type.h:68</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_a256e035e62b43cd79137abf7c066902a"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#a256e035e62b43cd79137abf7c066902a">grpc::ServerBuilder::AddListeningPort</a></div><div class="ttdeci">void AddListeningPort(const grpc::string &amp;addr, std::shared_ptr&lt; ServerCredentials &gt; creds, int *selected_port=nullptr)</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_ae1e6314004fba16607b883b8cc81f5c9"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#ae1e6314004fba16607b883b8cc81f5c9">grpc::ServerBuilder::SetMaxMessageSize</a></div><div class="ttdeci">void SetMaxMessageSize(int max_message_size)</div><div class="ttdef"><b>Definition:</b> server_builder.h:91</div></div>
+<div class="ttc" id="classgrpc_1_1_async_generic_service_html"><div class="ttname"><a href="classgrpc_1_1_async_generic_service.html">grpc::AsyncGenericService</a></div><div class="ttdef"><b>Definition:</b> async_generic_service.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1_thread_pool_interface_html"><div class="ttname"><a href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></div><div class="ttdef"><b>Definition:</b> thread_pool_interface.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_aea5dd313149029114c60571e5ee8b4cd"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#aea5dd313149029114c60571e5ee8b4cd">grpc::ServerBuilder::SetThreadPool</a></div><div class="ttdeci">void SetThreadPool(ThreadPoolInterface *thread_pool)</div></div>
+<div class="ttc" id="classgrpc_1_1_synchronous_service_html"><div class="ttname"><a href="classgrpc_1_1_synchronous_service.html">grpc::SynchronousService</a></div><div class="ttdef"><b>Definition:</b> service_type.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_af284cd39b185043e8e92405c1ae0f310"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#af284cd39b185043e8e92405c1ae0f310">grpc::ServerBuilder::BuildAndStart</a></div><div class="ttdeci">std::unique_ptr&lt; Server &gt; BuildAndStart()</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_accbbd95080ca974e84fa1d4cb2ea9518"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#accbbd95080ca974e84fa1d4cb2ea9518">grpc::ServerBuilder::AddCompletionQueue</a></div><div class="ttdeci">std::unique_ptr&lt; ServerCompletionQueue &gt; AddCompletionQueue()</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_ac62b0aa4c0448907e02d15386d58ef86"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#ac62b0aa4c0448907e02d15386d58ef86">grpc::ServerBuilder::RegisterAsyncGenericService</a></div><div class="ttdeci">void RegisterAsyncGenericService(AsyncGenericService *service)</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html"><div class="ttname"><a href="classgrpc_1_1_server_builder.html">grpc::ServerBuilder</a></div><div class="ttdef"><b>Definition:</b> server_builder.h:54</div></div>
+<div class="ttc" id="classgrpc_1_1_server_builder_html_a40f39b2ac8224a91c426b0e75bbb3c66"><div class="ttname"><a href="classgrpc_1_1_server_builder.html#a40f39b2ac8224a91c426b0e75bbb3c66">grpc::ServerBuilder::RegisterService</a></div><div class="ttdeci">void RegisterService(SynchronousService *service)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server__context_8h.html b/doc/ref/c++/html/server__context_8h.html
new file mode 100644
index 0000000000..ce4d8e1787
--- /dev/null
+++ b/doc/ref/c++/html/server__context_8h.html
@@ -0,0 +1,147 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server_context.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">server_context.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;map&gt;</code><br/>
+<code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;grpc/compression.h&gt;</code><br/>
+<code>#include &lt;grpc/support/time.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="auth__context_8h_source.html">grpc++/auth_context.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="time_8h_source.html">grpc++/time.h</a>&gt;</code><br/>
+</div>
+<p><a href="server__context_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader&lt; W, R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_handler.html">grpc::ClientStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_streaming_handler.html">grpc::ServerStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_bidi_streaming_handler.html">grpc::BidiStreamingHandler&lt; ServiceType, RequestType, ResponseType &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:namespacegrpc_1_1testing"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc_1_1testing.html">grpc::testing</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server__context_8h_source.html b/doc/ref/c++/html/server__context_8h_source.html
new file mode 100644
index 0000000000..f665301c5f
--- /dev/null
+++ b/doc/ref/c++/html/server__context_8h_source.html
@@ -0,0 +1,319 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server_context.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">server_context.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="server__context_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_SERVER_CONTEXT_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_SERVER_CONTEXT_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;grpc/compression.h&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;grpc/support/time.h&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="auth__context_8h.html">grpc++/auth_context.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="time_8h.html">grpc++/time.h</a>&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">struct </span>gpr_timespec;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">struct </span>grpc_metadata;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">struct </span>grpc_call;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">struct </span>census_context;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader.html"> 54</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_async_reader.html">ServerAsyncReader</a>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_writer.html"> 56</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_async_writer.html">ServerAsyncWriter</a>;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_async_response_writer.html">ServerAsyncResponseWriter</a>;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader_writer.html"> 60</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_async_reader_writer.html">ServerAsyncReaderWriter</a>;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_reader.html">ServerReader</a>;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_writer.html">ServerWriter</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_reader_writer.html">ServerReaderWriter</a>;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a>;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a>;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a>;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_call.html">Call</a>;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">class </span>CallOpBuffer;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>;</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server.html">Server</a>;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="keyword">namespace </span>testing {</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="keyword">class </span>InteropContextInspector;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;} <span class="comment">// namespace testing</span></div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment">// Interface of server side rpc context.</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html"> 86</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a> {</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">ServerContext</a>(); <span class="comment">// for async calls</span></div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6">~ServerContext</a>();</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#ifndef GRPC_CXX0X_NO_CHRONO</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052"> 92</a></span>&#160;<span class="preprocessor"></span> std::chrono::system_clock::time_point <a class="code" href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052">deadline</a>() {</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span> <a class="code" href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">Timespec2Timepoint</a>(deadline_);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#endif // !GRPC_CXX0X_NO_CHRONO</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc"> 97</a></span>&#160; gpr_timespec <a class="code" href="classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc">raw_deadline</a>() { <span class="keywordflow">return</span> deadline_; }</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f">AddInitialMetadata</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; key, <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; value);</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c">AddTrailingMetadata</a>(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; key, <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; value);</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864">IsCancelled</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1"> 104</a></span>&#160; <span class="keyword">const</span> std::multimap&lt;grpc::string, grpc::string&gt;&amp; <a class="code" href="classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1">client_metadata</a>() {</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordflow">return</span> client_metadata_;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; }</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8"> 108</a></span>&#160; grpc_compression_level <a class="code" href="classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8">compression_level</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">return</span> compression_level_;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; }</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d">set_compression_level</a>(grpc_compression_level level);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171"> 113</a></span>&#160; grpc_compression_algorithm <a class="code" href="classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171">compression_algorithm</a>()<span class="keyword"> const </span>{</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keywordflow">return</span> compression_algorithm_;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72">set_compression_algorithm</a>(grpc_compression_algorithm algorithm);</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; std::shared_ptr&lt;const AuthContext&gt; <a class="code" href="classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e">auth_context</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="comment">// Return the peer uri in a string.</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="comment">// WARNING: this value is never authenticated or subject to any security</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="comment">// related code. It must not be used for any authentication related</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="comment">// functionality. Instead, use auth_context.</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb">peer</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keyword">const</span> <span class="keyword">struct </span><a class="code" href="classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e">census_context</a>* <a class="code" href="classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e">census_context</a>() <span class="keyword">const</span>;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a54fd90aaca3685b127354412368eb1c6"> 129</a></span>&#160; <span class="keyword">friend</span> class ::grpc::testing::InteropContextInspector;</div>
+<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a8c3fa4c066981aae114e41c3f9340144"> 130</a></span>&#160; <span class="keyword">friend</span> class ::grpc::Server;</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a774bb57486686958c67f29072de768ed"> 132</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerAsyncReader;</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a6068d9e3369a1016e7b75350b80f4f45"> 134</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerAsyncWriter;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a2c679b602d120c70a6713fe742704b4e"> 136</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerAsyncResponseWriter;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a85f3f3dc5b92690c676b86571be20684"> 138</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerAsyncReaderWriter;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a4f20e2d049342ae00242bbc8021a44bd"> 140</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerReader;</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a2f2dfa831a62c43ad5647a45080488e3"> 142</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerWriter;</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R, <span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a8c0a0d64c582a952c8f16d8eac71c677"> 144</a></span>&#160; <span class="keyword">friend</span> class ::grpc::ServerReaderWriter;</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a76b9bb18b02084e9eaa8c9b99c668676"> 146</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_rpc_method_handler.html">RpcMethodHandler</a>;</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#ae11583f8aab976055b1feae895d7e12a"> 148</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_streaming_handler.html">ClientStreamingHandler</a>;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#ac2a23a31e1f8f09e2e51f09e7f50ba0c"> 150</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_streaming_handler.html">ServerStreamingHandler</a>;</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> ServiceType, <span class="keyword">class</span> RequestType, <span class="keyword">class</span> ResponseType&gt;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_context.html#a9fcf1462b4ea3c6a37e54076aafb93e1"> 152</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_bidi_streaming_handler.html">BidiStreamingHandler</a>;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="comment">// Prevent copying.</span></div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">ServerContext</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>&amp;);</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>&amp; operator=(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>&amp;);</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <span class="keyword">class </span>CompletionOp;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <span class="keywordtype">void</span> BeginCompletionOp(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call);</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">ServerContext</a>(gpr_timespec <a class="code" href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052">deadline</a>, grpc_metadata* metadata,</div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordtype">size_t</span> metadata_count);</div>
+<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordtype">void</span> set_call(grpc_call* call);</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; CompletionOp* completion_op_;</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; gpr_timespec deadline_;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; grpc_call* call_;</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq_;</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordtype">bool</span> sent_initial_metadata_;</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="keyword">mutable</span> std::shared_ptr&lt;const AuthContext&gt; auth_context_;</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt; client_metadata_;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt; initial_metadata_;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; std::multimap&lt;grpc::string, grpc::string&gt; trailing_metadata_;</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; grpc_compression_level compression_level_;</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; grpc_compression_algorithm compression_algorithm_;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;};</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="preprocessor">#endif // GRPCXX_SERVER_CONTEXT_H</span></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_a825f46891cc7db6c896add746eec8171"><div class="ttname"><a href="classgrpc_1_1_server_context.html#a825f46891cc7db6c896add746eec8171">grpc::ServerContext::compression_algorithm</a></div><div class="ttdeci">grpc_compression_algorithm compression_algorithm() const </div><div class="ttdef"><b>Definition:</b> server_context.h:113</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_a9e43d1edb334addb8bf672efcfe03052"><div class="ttname"><a href="classgrpc_1_1_server_context.html#a9e43d1edb334addb8bf672efcfe03052">grpc::ServerContext::deadline</a></div><div class="ttdeci">std::chrono::system_clock::time_point deadline()</div><div class="ttdef"><b>Definition:</b> server_context.h:92</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_ade949b886faed50627e5cbd35fe4ec72"><div class="ttname"><a href="classgrpc_1_1_server_context.html#ade949b886faed50627e5cbd35fe4ec72">grpc::ServerContext::set_compression_algorithm</a></div><div class="ttdeci">void set_compression_algorithm(grpc_compression_algorithm algorithm)</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_a401d5c77fde5cccb13155ccd668787e8"><div class="ttname"><a href="classgrpc_1_1_server_context.html#a401d5c77fde5cccb13155ccd668787e8">grpc::ServerContext::compression_level</a></div><div class="ttdeci">grpc_compression_level compression_level() const </div><div class="ttdef"><b>Definition:</b> server_context.h:108</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="time_8h_html"><div class="ttname"><a href="time_8h.html">time.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_a10f47e15934195dcaed6b756498b8fff"><div class="ttname"><a href="classgrpc_1_1_server_context.html#a10f47e15934195dcaed6b756498b8fff">grpc::ServerContext::ServerContext</a></div><div class="ttdeci">ServerContext()</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter</a></div><div class="ttdef"><b>Definition:</b> server_context.h:60</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_accfdf160f46aa20eda843443c3eea91d"><div class="ttname"><a href="classgrpc_1_1_server_context.html#accfdf160f46aa20eda843443c3eea91d">grpc::ServerContext::set_compression_level</a></div><div class="ttdeci">void set_compression_level(grpc_compression_level level)</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_ae3371f0adf8521c7097eee437fc4ca4f"><div class="ttname"><a href="classgrpc_1_1_server_context.html#ae3371f0adf8521c7097eee437fc4ca4f">grpc::ServerContext::AddInitialMetadata</a></div><div class="ttdeci">void AddInitialMetadata(const grpc::string &amp;key, const grpc::string &amp;value)</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_html"><div class="ttname"><a href="classgrpc_1_1_server_reader.html">grpc::ServerReader</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:53</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter</a></div><div class="ttdef"><b>Definition:</b> server_context.h:56</div></div>
+<div class="ttc" id="auth__context_8h_html"><div class="ttname"><a href="auth__context_8h.html">auth_context.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_afd37847b1bdba2f82e472fed6f31cea6"><div class="ttname"><a href="classgrpc_1_1_server_context.html#afd37847b1bdba2f82e472fed6f31cea6">grpc::ServerContext::~ServerContext</a></div><div class="ttdeci">~ServerContext()</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_af3adc0c2dc243915f6167c6f80d2882e"><div class="ttname"><a href="classgrpc_1_1_server_context.html#af3adc0c2dc243915f6167c6f80d2882e">grpc::ServerContext::census_context</a></div><div class="ttdeci">const struct census_context * census_context() const </div></div>
+<div class="ttc" id="classgrpc_1_1_server_html"><div class="ttname"><a href="classgrpc_1_1_server.html">grpc::Server</a></div><div class="ttdef"><b>Definition:</b> server.h:61</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_handler_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method_handler.html">grpc::RpcMethodHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_ae52a89bbf70c27be3325080000757864"><div class="ttname"><a href="classgrpc_1_1_server_context.html#ae52a89bbf70c27be3325080000757864">grpc::ServerContext::IsCancelled</a></div><div class="ttdeci">bool IsCancelled() const </div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_a5ef7910ccd61514eafa7087519bb17bb"><div class="ttname"><a href="classgrpc_1_1_server_context.html#a5ef7910ccd61514eafa7087519bb17bb">grpc::ServerContext::peer</a></div><div class="ttdeci">grpc::string peer() const </div></div>
+<div class="ttc" id="classgrpc_1_1_server_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_writer.html">grpc::ServerWriter</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_client_streaming_handler_html"><div class="ttname"><a href="classgrpc_1_1_client_streaming_handler.html">grpc::ClientStreamingHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:61</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_a82f70d1b5b56ca2a4a8a2f5bad6d8ca1"><div class="ttname"><a href="classgrpc_1_1_server_context.html#a82f70d1b5b56ca2a4a8a2f5bad6d8ca1">grpc::ServerContext::client_metadata</a></div><div class="ttdeci">const std::multimap&lt; grpc::string, grpc::string &gt; &amp; client_metadata()</div><div class="ttdef"><b>Definition:</b> server_context.h:104</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_server_streaming_handler_html"><div class="ttname"><a href="classgrpc_1_1_server_streaming_handler.html">grpc::ServerStreamingHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:63</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_response_writer_html"><div class="ttname"><a href="classgrpc_1_1_server_async_response_writer.html">grpc::ServerAsyncResponseWriter</a></div><div class="ttdef"><b>Definition:</b> async_unary_call.h:101</div></div>
+<div class="ttc" id="namespacegrpc_html_a12896f279762d0100669da708d466ec1"><div class="ttname"><a href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">grpc::Timespec2Timepoint</a></div><div class="ttdeci">std::chrono::system_clock::time_point Timespec2Timepoint(gpr_timespec t)</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_ac30e12c4ee3ca008522b24157f4f886c"><div class="ttname"><a href="classgrpc_1_1_server_context.html#ac30e12c4ee3ca008522b24157f4f886c">grpc::ServerContext::AddTrailingMetadata</a></div><div class="ttdeci">void AddTrailingMetadata(const grpc::string &amp;key, const grpc::string &amp;value)</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_add483537d23d3e06125dbe3f2bf50adc"><div class="ttname"><a href="classgrpc_1_1_server_context.html#add483537d23d3e06125dbe3f2bf50adc">grpc::ServerContext::raw_deadline</a></div><div class="ttdeci">gpr_timespec raw_deadline()</div><div class="ttdef"><b>Definition:</b> server_context.h:97</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html_a2a8657d382cee53d670208d640383e8e"><div class="ttname"><a href="classgrpc_1_1_server_context.html#a2a8657d382cee53d670208d640383e8e">grpc::ServerContext::auth_context</a></div><div class="ttdeci">std::shared_ptr&lt; const AuthContext &gt; auth_context() const </div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_html"><div class="ttname"><a href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader</a></div><div class="ttdef"><b>Definition:</b> server_context.h:54</div></div>
+<div class="ttc" id="classgrpc_1_1_bidi_streaming_handler_html"><div class="ttname"><a href="classgrpc_1_1_bidi_streaming_handler.html">grpc::BidiStreamingHandler</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:65</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server__credentials_8h.html b/doc/ref/c++/html/server__credentials_8h.html
new file mode 100644
index 0000000000..37efee4ac7
--- /dev/null
+++ b/doc/ref/c++/html/server__credentials_8h.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server_credentials.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">server_credentials.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;memory&gt;</code><br/>
+<code>#include &lt;vector&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+</div>
+<p><a href="server__credentials_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_credentials.html">grpc::ServerCredentials</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html">grpc::SslServerCredentialsOptions</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">grpc::SslServerCredentialsOptions::PemKeyCertPair</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:adf4e07954696095e27c0181691a1f752"><td class="memItemLeft" align="right" valign="top">std::shared_ptr<br class="typebreak"/>
+&lt; ServerCredentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#adf4e07954696095e27c0181691a1f752">grpc::SslServerCredentials</a> (const SslServerCredentialsOptions &amp;options)</td></tr>
+<tr class="separator:adf4e07954696095e27c0181691a1f752"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa8c26768567516f22852d7ccc09c7940"><td class="memItemLeft" align="right" valign="top">std::shared_ptr<br class="typebreak"/>
+&lt; ServerCredentials &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940">grpc::InsecureServerCredentials</a> ()</td></tr>
+<tr class="separator:aa8c26768567516f22852d7ccc09c7940"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/server__credentials_8h_source.html b/doc/ref/c++/html/server__credentials_8h_source.html
new file mode 100644
index 0000000000..69954884c6
--- /dev/null
+++ b/doc/ref/c++/html/server__credentials_8h_source.html
@@ -0,0 +1,194 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/server_credentials.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">server_credentials.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="server__credentials_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_SERVER_CREDENTIALS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_SERVER_CREDENTIALS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;memory&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">struct </span>grpc_server;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">class </span>Server;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">// grpc_server_credentials wrapper class.</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_credentials.html"> 48</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_credentials.html">ServerCredentials</a> {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_server_credentials.html#aa5df8a7a8f509a96f23ef8943a0306ff">~ServerCredentials</a>();</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_credentials.html#a8c3fa4c066981aae114e41c3f9340144"> 53</a></span>&#160; <span class="keyword">friend</span> class ::grpc::Server;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">int</span> AddPortToServer(<span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; addr,</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; grpc_server* server) = 0;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;};</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="comment">// Options to create ServerCredentials with SSL</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options.html"> 60</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structgrpc_1_1_ssl_server_credentials_options.html">SslServerCredentialsOptions</a> {</div>
+<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105"> 61</a></span>&#160; <a class="code" href="structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105">SslServerCredentialsOptions</a>() : <a class="code" href="structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e">force_client_auth</a>(false) {}</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html"> 63</a></span>&#160; <span class="keyword">struct </span><a class="code" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">PemKeyCertPair</a> {</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050"> 64</a></span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050">private_key</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e"> 65</a></span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e">cert_chain</a>;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; };</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74"> 67</a></span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74">pem_root_certs</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d"> 68</a></span>&#160; std::vector&lt;PemKeyCertPair&gt; <a class="code" href="structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d">pem_key_cert_pairs</a>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e"> 69</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e">force_client_auth</a>;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;};</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment">// Builds SSL ServerCredentials given SSL specific options</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;std::shared_ptr&lt;ServerCredentials&gt; <a class="code" href="namespacegrpc.html#adf4e07954696095e27c0181691a1f752">SslServerCredentials</a>(</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc_1_1_ssl_server_credentials_options.html">SslServerCredentialsOptions</a>&amp; options);</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;std::shared_ptr&lt;ServerCredentials&gt; <a class="code" href="namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940">InsecureServerCredentials</a>();</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#endif // GRPCXX_SERVER_CREDENTIALS_H</span></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair_html_ad58d2824d15cc6a1d646b8bef0b8352e"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e">grpc::SslServerCredentialsOptions::PemKeyCertPair::cert_chain</a></div><div class="ttdeci">grpc::string cert_chain</div><div class="ttdef"><b>Definition:</b> server_credentials.h:65</div></div>
+<div class="ttc" id="namespacegrpc_html_aa8c26768567516f22852d7ccc09c7940"><div class="ttname"><a href="namespacegrpc.html#aa8c26768567516f22852d7ccc09c7940">grpc::InsecureServerCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; ServerCredentials &gt; InsecureServerCredentials()</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_server_credentials_html_aa5df8a7a8f509a96f23ef8943a0306ff"><div class="ttname"><a href="classgrpc_1_1_server_credentials.html#aa5df8a7a8f509a96f23ef8943a0306ff">grpc::ServerCredentials::~ServerCredentials</a></div><div class="ttdeci">virtual ~ServerCredentials()</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair_html"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">grpc::SslServerCredentialsOptions::PemKeyCertPair</a></div><div class="ttdef"><b>Definition:</b> server_credentials.h:63</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_html_aa563c0e5a34e389dbc2f4dfa3c097e3e"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e">grpc::SslServerCredentialsOptions::force_client_auth</a></div><div class="ttdeci">bool force_client_auth</div><div class="ttdef"><b>Definition:</b> server_credentials.h:69</div></div>
+<div class="ttc" id="classgrpc_1_1_server_credentials_html"><div class="ttname"><a href="classgrpc_1_1_server_credentials.html">grpc::ServerCredentials</a></div><div class="ttdef"><b>Definition:</b> server_credentials.h:48</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_html_a3a042e846edd3d1e2f24e846e36c694d"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d">grpc::SslServerCredentialsOptions::pem_key_cert_pairs</a></div><div class="ttdeci">std::vector&lt; PemKeyCertPair &gt; pem_key_cert_pairs</div><div class="ttdef"><b>Definition:</b> server_credentials.h:68</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_html_acdde73dba83ee30aeda4a678f5ce8e74"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74">grpc::SslServerCredentialsOptions::pem_root_certs</a></div><div class="ttdeci">grpc::string pem_root_certs</div><div class="ttdef"><b>Definition:</b> server_credentials.h:67</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_html"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options.html">grpc::SslServerCredentialsOptions</a></div><div class="ttdef"><b>Definition:</b> server_credentials.h:60</div></div>
+<div class="ttc" id="namespacegrpc_html_adf4e07954696095e27c0181691a1f752"><div class="ttname"><a href="namespacegrpc.html#adf4e07954696095e27c0181691a1f752">grpc::SslServerCredentials</a></div><div class="ttdeci">std::shared_ptr&lt; ServerCredentials &gt; SslServerCredentials(const SslServerCredentialsOptions &amp;options)</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair_html_ad9fa2a2083a40127d264e61cca637050"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050">grpc::SslServerCredentialsOptions::PemKeyCertPair::private_key</a></div><div class="ttdeci">grpc::string private_key</div><div class="ttdef"><b>Definition:</b> server_credentials.h:64</div></div>
+<div class="ttc" id="structgrpc_1_1_ssl_server_credentials_options_html_ae85661f17b0dd9f4fc27275203e5f105"><div class="ttname"><a href="structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105">grpc::SslServerCredentialsOptions::SslServerCredentialsOptions</a></div><div class="ttdeci">SslServerCredentialsOptions()</div><div class="ttdef"><b>Definition:</b> server_credentials.h:61</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/service__type_8h.html b/doc/ref/c++/html/service__type_8h.html
new file mode 100644
index 0000000000..f9a9db8d46
--- /dev/null
+++ b/doc/ref/c++/html/service__type_8h.html
@@ -0,0 +1,124 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/service_type.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">service_type.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="serialization__traits_8h_source.html">grpc++/impl/serialization_traits.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="server_8h_source.html">grpc++/server.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+</div>
+<p><a href="service__type_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_synchronous_service.html">grpc::SynchronousService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_asynchronous_service.html">grpc::AsynchronousService</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/service__type_8h_source.html b/doc/ref/c++/html/service__type_8h_source.html
new file mode 100644
index 0000000000..6f9c4649fd
--- /dev/null
+++ b/doc/ref/c++/html/service__type_8h_source.html
@@ -0,0 +1,247 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/service_type.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">service_type.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="service__type_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_SERVICE_TYPE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_SERVICE_TYPE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="serialization__traits_8h.html">grpc++/impl/serialization_traits.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="server_8h.html">grpc++/server.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">class </span>Call;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">class </span>CompletionQueue;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span>RpcService;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">class </span>Server;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">class </span>ServerCompletionQueue;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">class </span>ServerContext;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classgrpc_1_1_synchronous_service.html"> 51</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_synchronous_service.html">SynchronousService</a> {</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05"> 53</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05">~SynchronousService</a>() {}</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_rpc_service.html">RpcService</a>* <a class="code" href="classgrpc_1_1_synchronous_service.html#ad9eb51c9dc0cedfd838c23db47349796">service</a>() = 0;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;};</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_streaming_interface.html"> 57</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a> {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc"> 59</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">~ServerAsyncStreamingInterface</a>() {}</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">SendInitialMetadata</a>(<span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_streaming_interface.html#ac2055578ac48afabe5af487878450f68"> 64</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server.html">Server</a>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> BindCall(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call) = 0;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;};</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html"> 68</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_asynchronous_service.html">AsynchronousService</a> {</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b"> 70</a></span>&#160; <a class="code" href="classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b">AsynchronousService</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>** method_names, <span class="keywordtype">size_t</span> method_count)</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; : server_(nullptr),</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; method_names_(method_names),</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; method_count_(method_count),</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; request_args_(nullptr) {}</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00"> 76</a></span>&#160; <a class="code" href="classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00">~AsynchronousService</a>() { <span class="keyword">delete</span>[] request_args_; }</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> Message&gt;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990"> 80</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990">RequestAsyncUnary</a>(<span class="keywordtype">int</span> index, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* context, <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a>* request,</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a>* stream,</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* call_cq,</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>* notification_cq, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; server_-&gt;RequestAsyncCall(request_args_[index], context, stream, call_cq,</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; notification_cq, tag, request);</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369"> 87</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369">RequestClientStreaming</a>(<span class="keywordtype">int</span> index, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* context,</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a>* stream,</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* call_cq,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>* notification_cq,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; server_-&gt;RequestAsyncCall(request_args_[index], context, stream, call_cq,</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; notification_cq, tag);</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; }</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> Message&gt;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564"> 96</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564">RequestServerStreaming</a>(<span class="keywordtype">int</span> index, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* context,</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <a class="code" href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">Message</a>* request,</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a>* stream,</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* call_cq,</div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>* notification_cq,</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; server_-&gt;RequestAsyncCall(request_args_[index], context, stream, call_cq,</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; notification_cq, tag, request);</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; }</div>
+<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608"> 105</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608">RequestBidiStreaming</a>(<span class="keywordtype">int</span> index, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* context,</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="classgrpc_1_1_server_async_streaming_interface.html">ServerAsyncStreamingInterface</a>* stream,</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* call_cq,</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="classgrpc_1_1_server_completion_queue.html">ServerCompletionQueue</a>* notification_cq, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; server_-&gt;RequestAsyncCall(request_args_[index], context, stream, call_cq,</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; notification_cq, tag);</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classgrpc_1_1_asynchronous_service.html#ac2055578ac48afabe5af487878450f68"> 114</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_server.html">Server</a>;</div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="classgrpc_1_1_server.html">Server</a>* server_;</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>** <span class="keyword">const</span> method_names_;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordtype">size_t</span> method_count_;</div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordtype">void</span>** request_args_;</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;};</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_SERVICE_TYPE_H</span></div>
+<div class="ttc" id="classgrpc_1_1_server_async_streaming_interface_html_ab2d5db2b2ca3032994396543a8bb044c"><div class="ttname"><a href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">grpc::ServerAsyncStreamingInterface::SendInitialMetadata</a></div><div class="ttdeci">virtual void SendInitialMetadata(void *tag)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html_a0f1526b3617c6b69d4774194acc6aa00"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html#a0f1526b3617c6b69d4774194acc6aa00">grpc::AsynchronousService::~AsynchronousService</a></div><div class="ttdeci">~AsynchronousService()</div><div class="ttdef"><b>Definition:</b> service_type.h:76</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html">grpc::AsynchronousService</a></div><div class="ttdef"><b>Definition:</b> service_type.h:68</div></div>
+<div class="ttc" id="classgrpc_1_1_synchronous_service_html_a7799f247e0928ff36e32ead579585a05"><div class="ttname"><a href="classgrpc_1_1_synchronous_service.html#a7799f247e0928ff36e32ead579585a05">grpc::SynchronousService::~SynchronousService</a></div><div class="ttdeci">virtual ~SynchronousService()</div><div class="ttdef"><b>Definition:</b> service_type.h:53</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_streaming_interface_html"><div class="ttname"><a href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></div><div class="ttdef"><b>Definition:</b> service_type.h:57</div></div>
+<div class="ttc" id="serialization__traits_8h_html"><div class="ttname"><a href="serialization__traits_8h.html">serialization_traits.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html_a3694e436bb163a5162cf915a7e277369"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html#a3694e436bb163a5162cf915a7e277369">grpc::AsynchronousService::RequestClientStreaming</a></div><div class="ttdeci">void RequestClientStreaming(int index, ServerContext *context, ServerAsyncStreamingInterface *stream, CompletionQueue *call_cq, ServerCompletionQueue *notification_cq, void *tag)</div><div class="ttdef"><b>Definition:</b> service_type.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_synchronous_service_html"><div class="ttname"><a href="classgrpc_1_1_synchronous_service.html">grpc::SynchronousService</a></div><div class="ttdef"><b>Definition:</b> service_type.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_service_html"><div class="ttname"><a href="classgrpc_1_1_rpc_service.html">grpc::RpcService</a></div><div class="ttdef"><b>Definition:</b> rpc_service_method.h:227</div></div>
+<div class="ttc" id="server_8h_html"><div class="ttname"><a href="server_8h.html">server.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_html"><div class="ttname"><a href="classgrpc_1_1_server.html">grpc::Server</a></div><div class="ttdef"><b>Definition:</b> server.h:61</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html_a197117ab963be83b26e1c67d5a7fd564"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html#a197117ab963be83b26e1c67d5a7fd564">grpc::AsynchronousService::RequestServerStreaming</a></div><div class="ttdeci">void RequestServerStreaming(int index, ServerContext *context, Message *request, ServerAsyncStreamingInterface *stream, CompletionQueue *call_cq, ServerCompletionQueue *notification_cq, void *tag)</div><div class="ttdef"><b>Definition:</b> service_type.h:96</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html_aacdfbb6050c0d572892681ecd8c5b01b"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html#aacdfbb6050c0d572892681ecd8c5b01b">grpc::AsynchronousService::AsynchronousService</a></div><div class="ttdeci">AsynchronousService(const char **method_names, size_t method_count)</div><div class="ttdef"><b>Definition:</b> service_type.h:70</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_synchronous_service_html_ad9eb51c9dc0cedfd838c23db47349796"><div class="ttname"><a href="classgrpc_1_1_synchronous_service.html#ad9eb51c9dc0cedfd838c23db47349796">grpc::SynchronousService::service</a></div><div class="ttdeci">virtual RpcService * service()=0</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html_a3b7e40607e2bb45b2901a4990847f608"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html#a3b7e40607e2bb45b2901a4990847f608">grpc::AsynchronousService::RequestBidiStreaming</a></div><div class="ttdeci">void RequestBidiStreaming(int index, ServerContext *context, ServerAsyncStreamingInterface *stream, CompletionQueue *call_cq, ServerCompletionQueue *notification_cq, void *tag)</div><div class="ttdef"><b>Definition:</b> service_type.h:105</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_streaming_interface_html_af7c2bc176a6658e86a74a1cacd53d3bc"><div class="ttname"><a href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">grpc::ServerAsyncStreamingInterface::~ServerAsyncStreamingInterface</a></div><div class="ttdeci">virtual ~ServerAsyncStreamingInterface()</div><div class="ttdef"><b>Definition:</b> service_type.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1_server_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_server_completion_queue.html">grpc::ServerCompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:162</div></div>
+<div class="ttc" id="classgrpc_1_1_asynchronous_service_html_a19c9368c6cd8ea4b296c9023cc96b990"><div class="ttname"><a href="classgrpc_1_1_asynchronous_service.html#a19c9368c6cd8ea4b296c9023cc96b990">grpc::AsynchronousService::RequestAsyncUnary</a></div><div class="ttdeci">void RequestAsyncUnary(int index, ServerContext *context, Message *request, ServerAsyncStreamingInterface *stream, CompletionQueue *call_cq, ServerCompletionQueue *notification_cq, void *tag)</div><div class="ttdef"><b>Definition:</b> service_type.h:80</div></div>
+<div class="ttc" id="namespacegrpc_1_1protobuf_html_a58557bfd4af54f1c54a6de69ab1fb43c"><div class="ttname"><a href="namespacegrpc_1_1protobuf.html#a58557bfd4af54f1c54a6de69ab1fb43c">grpc::protobuf::Message</a></div><div class="ttdeci">::google::protobuf::Message Message</div><div class="ttdef"><b>Definition:</b> config_protobuf.h:60</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/slice_8h.html b/doc/ref/c++/html/slice_8h.html
new file mode 100644
index 0000000000..148b4f1bd2
--- /dev/null
+++ b/doc/ref/c++/html/slice_8h.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/slice.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">slice.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;grpc/support/slice.h&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+</div>
+<p><a href="slice_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_slice.html">grpc::Slice</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/slice_8h_source.html b/doc/ref/c++/html/slice_8h_source.html
new file mode 100644
index 0000000000..0a00663316
--- /dev/null
+++ b/doc/ref/c++/html/slice_8h_source.html
@@ -0,0 +1,188 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/slice.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">slice.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="slice_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_SLICE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_SLICE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;grpc/support/slice.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html"> 42</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_slice.html">Slice</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <span class="comment">// construct empty slice</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">Slice</a>();</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// destructor - drops one ref</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <a class="code" href="classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94">~Slice</a>();</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="comment">// construct slice from grpc slice, adding a ref</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2"> 49</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a> { <a class="code" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2">ADD_REF</a> };</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <a class="code" href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">Slice</a>(gpr_slice slice, <a class="code" href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">AddRef</a>);</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="comment">// construct slice from grpc slice, stealing a ref</span></div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a"> 52</a></span>&#160; <span class="keyword">enum</span> <a class="code" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a> { <a class="code" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7">STEAL_REF</a> };</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">Slice</a>(gpr_slice slice, <a class="code" href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">StealRef</a>);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">// copy constructor - adds a ref</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">Slice</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_slice.html">Slice</a>&amp; other);</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">// assignment - ref count is unchanged</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1"> 57</a></span>&#160; <a class="code" href="classgrpc_1_1_slice.html">Slice</a>&amp; <a class="code" href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1">operator=</a>(<a class="code" href="classgrpc_1_1_slice.html">Slice</a> other) {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; std::swap(slice_, other.slice_);</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; }</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724"> 62</a></span>&#160; <span class="keywordtype">size_t</span> <a class="code" href="classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724">size</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> GPR_SLICE_LENGTH(slice_); }</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8"> 63</a></span>&#160; <span class="keyword">const</span> gpr_uint8* <a class="code" href="classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8">begin</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> GPR_SLICE_START_PTR(slice_); }</div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60"> 64</a></span>&#160; <span class="keyword">const</span> gpr_uint8* <a class="code" href="classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60">end</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> GPR_SLICE_END_PTR(slice_); }</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classgrpc_1_1_slice.html#ac6c83f28f4b17ae317094a794e92e99e"> 67</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1_byte_buffer.html">ByteBuffer</a>;</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; gpr_slice slice_;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;};</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#endif // GRPCXX_SLICE_H</span></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_a1f89af608ad9e5bbc2870d4ee7140c94"><div class="ttname"><a href="classgrpc_1_1_slice.html#a1f89af608ad9e5bbc2870d4ee7140c94">grpc::Slice::~Slice</a></div><div class="ttdeci">~Slice()</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_a15f9576be1afa1048ed8963d50581b60"><div class="ttname"><a href="classgrpc_1_1_slice.html#a15f9576be1afa1048ed8963d50581b60">grpc::Slice::end</a></div><div class="ttdeci">const gpr_uint8 * end() const </div><div class="ttdef"><b>Definition:</b> slice.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_a13fbbec0e9121a8b948d563f9730d75a"><div class="ttname"><a href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75a">grpc::Slice::StealRef</a></div><div class="ttdeci">StealRef</div><div class="ttdef"><b>Definition:</b> slice.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html"><div class="ttname"><a href="classgrpc_1_1_slice.html">grpc::Slice</a></div><div class="ttdef"><b>Definition:</b> slice.h:42</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_ad7b0a21bd37c2ed9899c369777cc9fb8"><div class="ttname"><a href="classgrpc_1_1_slice.html#ad7b0a21bd37c2ed9899c369777cc9fb8">grpc::Slice::begin</a></div><div class="ttdeci">const gpr_uint8 * begin() const </div><div class="ttdef"><b>Definition:</b> slice.h:63</div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2"><div class="ttname"><a href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2a2ea965f79036dea69221557ec04580b2">grpc::Slice::ADD_REF</a></div><div class="ttdef"><b>Definition:</b> slice.h:49</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7"><div class="ttname"><a href="classgrpc_1_1_slice.html#a13fbbec0e9121a8b948d563f9730d75aae0777a96d69fe69aec2acd1f0f9cefb7">grpc::Slice::STEAL_REF</a></div><div class="ttdef"><b>Definition:</b> slice.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_a8c5179cf7a39f66d65887bf298dc548f"><div class="ttname"><a href="classgrpc_1_1_slice.html#a8c5179cf7a39f66d65887bf298dc548f">grpc::Slice::Slice</a></div><div class="ttdeci">Slice()</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_aa216fa6d6e98e5e2677b7d33fb4af724"><div class="ttname"><a href="classgrpc_1_1_slice.html#aa216fa6d6e98e5e2677b7d33fb4af724">grpc::Slice::size</a></div><div class="ttdeci">size_t size() const </div><div class="ttdef"><b>Definition:</b> slice.h:62</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_ac5a109779239ed4d3fd58e8124abdba1"><div class="ttname"><a href="classgrpc_1_1_slice.html#ac5a109779239ed4d3fd58e8124abdba1">grpc::Slice::operator=</a></div><div class="ttdeci">Slice &amp; operator=(Slice other)</div><div class="ttdef"><b>Definition:</b> slice.h:57</div></div>
+<div class="ttc" id="classgrpc_1_1_slice_html_ac1e8469bbb6dfa9ab9e646e0b48f5fe2"><div class="ttname"><a href="classgrpc_1_1_slice.html#ac1e8469bbb6dfa9ab9e646e0b48f5fe2">grpc::Slice::AddRef</a></div><div class="ttdeci">AddRef</div><div class="ttdef"><b>Definition:</b> slice.h:49</div></div>
+<div class="ttc" id="classgrpc_1_1_byte_buffer_html"><div class="ttname"><a href="classgrpc_1_1_byte_buffer.html">grpc::ByteBuffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/status_8h.html b/doc/ref/c++/html/status_8h.html
new file mode 100644
index 0000000000..6634199319
--- /dev/null
+++ b/doc/ref/c++/html/status_8h.html
@@ -0,0 +1,118 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/status.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">status.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="status__code__enum_8h_source.html">grpc++/status_code_enum.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+</div>
+<p><a href="status_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_status.html">grpc::Status</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/status_8h_source.html b/doc/ref/c++/html/status_8h_source.html
new file mode 100644
index 0000000000..57d1d5856e
--- /dev/null
+++ b/doc/ref/c++/html/status_8h_source.html
@@ -0,0 +1,177 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/status.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">status.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="status_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_STATUS_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_STATUS_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status__code__enum_8h.html">grpc++/status_code_enum.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html"> 42</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_status.html">Status</a> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c"> 44</a></span>&#160; <a class="code" href="classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c">Status</a>() : code_(<a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a>::<a class="code" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">OK</a>) {}</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html#a8419a0b716f961c8d2d781c65f03def6"> 45</a></span>&#160; <a class="code" href="classgrpc_1_1_status.html#a8419a0b716f961c8d2d781c65f03def6">Status</a>(<a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a> code, <span class="keyword">const</span> <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&amp; details)</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; : code_(code), details_(details) {}</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="comment">// Pre-defined special status objects.</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc"> 49</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; <a class="code" href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">OK</a>;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab"> 50</a></span>&#160; <span class="keyword">static</span> <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; <a class="code" href="classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab">CANCELLED</a>;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181"> 52</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a> <a class="code" href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181">error_code</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code_; }</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16"> 53</a></span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> <a class="code" href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16">error_message</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> details_; }</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc"> 55</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> code_ == <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">StatusCode::OK</a>; }</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a> code_;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> details_;</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;};</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#endif // GRPCXX_STATUS_H</span></div>
+<div class="ttc" id="status__code__enum_8h_html"><div class="ttname"><a href="status__code__enum_8h.html">status_code_enum.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a87888a7acefced58302f89a295940f16"><div class="ttname"><a href="classgrpc_1_1_status.html#a87888a7acefced58302f89a295940f16">grpc::Status::error_message</a></div><div class="ttdeci">grpc::string error_message() const </div><div class="ttdef"><b>Definition:</b> status.h:53</div></div>
+<div class="ttc" id="namespacegrpc_html_ab04a87625da3bf85cdaf5e7856b00203"><div class="ttname"><a href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a></div><div class="ttdeci">std::string string</div><div class="ttdef"><b>Definition:</b> config.h:112</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a9994ffe95a0495915d82481c2ec594ab"><div class="ttname"><a href="classgrpc_1_1_status.html#a9994ffe95a0495915d82481c2ec594ab">grpc::Status::CANCELLED</a></div><div class="ttdeci">static const Status &amp; CANCELLED</div><div class="ttdef"><b>Definition:</b> status.h:50</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">grpc::OK</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:41</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43b"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">grpc::StatusCode</a></div><div class="ttdeci">StatusCode</div><div class="ttdef"><b>Definition:</b> status_code_enum.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a46537b45349a95126a16dcd67b5cf54c"><div class="ttname"><a href="classgrpc_1_1_status.html#a46537b45349a95126a16dcd67b5cf54c">grpc::Status::Status</a></div><div class="ttdeci">Status()</div><div class="ttdef"><b>Definition:</b> status.h:44</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a8419a0b716f961c8d2d781c65f03def6"><div class="ttname"><a href="classgrpc_1_1_status.html#a8419a0b716f961c8d2d781c65f03def6">grpc::Status::Status</a></div><div class="ttdeci">Status(StatusCode code, const grpc::string &amp;details)</div><div class="ttdef"><b>Definition:</b> status.h:45</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a78b50cb074bcd9f1dd50e8f212f7e181"><div class="ttname"><a href="classgrpc_1_1_status.html#a78b50cb074bcd9f1dd50e8f212f7e181">grpc::Status::error_code</a></div><div class="ttdeci">StatusCode error_code() const </div><div class="ttdef"><b>Definition:</b> status.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a1f5b65c54d4e6dd502897e36040714dc"><div class="ttname"><a href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">grpc::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_acbac12f241ad08f449aa1b9086ec7acc"><div class="ttname"><a href="classgrpc_1_1_status.html#acbac12f241ad08f449aa1b9086ec7acc">grpc::Status::OK</a></div><div class="ttdeci">static const Status &amp; OK</div><div class="ttdef"><b>Definition:</b> status.h:49</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/status__code__enum_8h.html b/doc/ref/c++/html/status__code__enum_8h.html
new file mode 100644
index 0000000000..c5bf1ebf4d
--- /dev/null
+++ b/doc/ref/c++/html/status__code__enum_8h.html
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/status_code_enum.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#enum-members">Enumerations</a> </div>
+ <div class="headertitle">
+<div class="title">status_code_enum.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><a href="status__code__enum_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
+Enumerations</h2></td></tr>
+<tr class="memitem:aff1730578c90160528f6a8d67ef5c43b"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">grpc::StatusCode</a> { <br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">grpc::OK</a> = 0,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2">grpc::CANCELLED</a> = 1,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256">grpc::UNKNOWN</a> = 2,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2">grpc::INVALID_ARGUMENT</a> = 3,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628">grpc::DEADLINE_EXCEEDED</a> = 4,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5">grpc::NOT_FOUND</a> = 5,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b">grpc::ALREADY_EXISTS</a> = 6,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449">grpc::PERMISSION_DENIED</a> = 7,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e">grpc::UNAUTHENTICATED</a> = 16,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f">grpc::RESOURCE_EXHAUSTED</a> = 8,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2">grpc::FAILED_PRECONDITION</a> = 9,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c">grpc::ABORTED</a> = 10,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901">grpc::OUT_OF_RANGE</a> = 11,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b">grpc::UNIMPLEMENTED</a> = 12,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3">grpc::INTERNAL</a> = 13,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3">grpc::UNAVAILABLE</a> = 14,
+<br/>
+&#160;&#160;<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688">grpc::DATA_LOSS</a> = 15,
+<a class="el" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234">grpc::DO_NOT_USE</a> = -1
+<br/>
+ }</td></tr>
+<tr class="separator:aff1730578c90160528f6a8d67ef5c43b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/status__code__enum_8h_source.html b/doc/ref/c++/html/status__code__enum_8h_source.html
new file mode 100644
index 0000000000..b5976fd2fe
--- /dev/null
+++ b/doc/ref/c++/html/status__code__enum_8h_source.html
@@ -0,0 +1,278 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/status_code_enum.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">status_code_enum.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="status__code__enum_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_STATUS_CODE_ENUM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_STATUS_CODE_ENUM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b"> 39</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">StatusCode</a> {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="comment">/* Not an error; returned on success */</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65"> 41</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">OK</a> = 0,</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="comment">/* The operation was cancelled (typically by the caller). */</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2"> 44</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2">CANCELLED</a> = 1,</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">/* Unknown error. An example of where this error may be returned is</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> if a Status value received from another address space belongs to</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> an error-space that is not known in this address space. Also</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> errors raised by APIs that do not return enough error information</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> may be converted to this error. */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256"> 51</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256">UNKNOWN</a> = 2,</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">/* Client specified an invalid argument. Note that this differs</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> from FAILED_PRECONDITION. INVALID_ARGUMENT indicates arguments</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> that are problematic regardless of the state of the system</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="comment"> (e.g., a malformed file name). */</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2"> 57</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2">INVALID_ARGUMENT</a> = 3,</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="comment">/* Deadline expired before operation could complete. For operations</span></div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="comment"> that change the state of the system, this error may be returned</span></div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment"> even if the operation has completed successfully. For example, a</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="comment"> successful response from a server could have been delayed long</span></div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="comment"> enough for the deadline to expire. */</span></div>
+<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628"> 64</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628">DEADLINE_EXCEEDED</a> = 4,</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="comment">/* Some requested entity (e.g., file or directory) was not found. */</span></div>
+<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5"> 67</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5">NOT_FOUND</a> = 5,</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">/* Some entity that we attempted to create (e.g., file or directory)</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="comment"> already exists. */</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b"> 71</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b">ALREADY_EXISTS</a> = 6,</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="comment">/* The caller does not have permission to execute the specified</span></div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> operation. PERMISSION_DENIED must not be used for rejections</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> caused by exhausting some resource (use RESOURCE_EXHAUSTED</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> instead for those errors). PERMISSION_DENIED must not be</span></div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> used if the caller can not be identified (use UNAUTHENTICATED</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> instead for those errors). */</span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449"> 79</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449">PERMISSION_DENIED</a> = 7,</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/* The request does not have valid authentication credentials for the</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> operation. */</span></div>
+<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e"> 83</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e">UNAUTHENTICATED</a> = 16,</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="comment">/* Some resource has been exhausted, perhaps a per-user quota, or</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> perhaps the entire file system is out of space. */</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f"> 87</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f">RESOURCE_EXHAUSTED</a> = 8,</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">/* Operation was rejected because the system is not in a state</span></div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> required for the operation&#39;s execution. For example, directory</span></div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> to be deleted may be non-empty, an rmdir operation is applied to</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> a non-directory, etc.</span></div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> A litmus test that may help a service implementor in deciding</span></div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> between FAILED_PRECONDITION, ABORTED, and UNAVAILABLE:</span></div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="comment"> (a) Use UNAVAILABLE if the client can retry just the failing call.</span></div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="comment"> (b) Use ABORTED if the client should retry at a higher-level</span></div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="comment"> (e.g., restarting a read-modify-write sequence).</span></div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="comment"> (c) Use FAILED_PRECONDITION if the client should not retry until</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="comment"> the system state has been explicitly fixed. E.g., if an &quot;rmdir&quot;</span></div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="comment"> fails because the directory is non-empty, FAILED_PRECONDITION</span></div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment"> should be returned since the client should not retry unless</span></div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment"> they have first fixed up the directory by deleting files from it.</span></div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> (d) Use FAILED_PRECONDITION if the client performs conditional</span></div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> REST Get/Update/Delete on a resource and the resource on the</span></div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> server does not match the condition. E.g., conflicting</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment"> read-modify-write on the same resource. */</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2"> 108</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2">FAILED_PRECONDITION</a> = 9,</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/* The operation was aborted, typically due to a concurrency issue</span></div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> like sequencer check failures, transaction aborts, etc.</span></div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment"> See litmus test above for deciding between FAILED_PRECONDITION,</span></div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment"> ABORTED, and UNAVAILABLE. */</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c"> 115</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c">ABORTED</a> = 10,</div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;</div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="comment">/* Operation was attempted past the valid range. E.g., seeking or</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment"> reading past end of file.</span></div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment"> Unlike INVALID_ARGUMENT, this error indicates a problem that may</span></div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment"> be fixed if the system state changes. For example, a 32-bit file</span></div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment"> system will generate INVALID_ARGUMENT if asked to read at an</span></div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment"> offset that is not in the range [0,2^32-1], but it will generate</span></div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment"> OUT_OF_RANGE if asked to read from an offset past the current</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment"> file size.</span></div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> There is a fair bit of overlap between FAILED_PRECONDITION and</span></div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment"> OUT_OF_RANGE. We recommend using OUT_OF_RANGE (the more specific</span></div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment"> error) when it applies so that callers who are iterating through</span></div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment"> a space can easily look for an OUT_OF_RANGE error to detect when</span></div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> they are done. */</span></div>
+<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901"> 132</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901">OUT_OF_RANGE</a> = 11,</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="comment">/* Operation is not implemented or not supported/enabled in this service. */</span></div>
+<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b"> 135</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b">UNIMPLEMENTED</a> = 12,</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="comment">/* Internal errors. Means some invariants expected by underlying</span></div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> system has been broken. If you see one of these errors,</span></div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> something is very broken. */</span></div>
+<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3"> 140</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3">INTERNAL</a> = 13,</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="comment">/* The service is currently unavailable. This is a most likely a</span></div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> transient condition and may be corrected by retrying with</span></div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> a backoff.</span></div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="comment"> See litmus test above for deciding between FAILED_PRECONDITION,</span></div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="comment"> ABORTED, and UNAVAILABLE. */</span></div>
+<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3"> 148</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3">UNAVAILABLE</a> = 14,</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="comment">/* Unrecoverable data loss or corruption. */</span></div>
+<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688"> 151</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688">DATA_LOSS</a> = 15,</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="comment">/* Force users to include a default branch: */</span></div>
+<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234"> 154</a></span>&#160; <a class="code" href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234">DO_NOT_USE</a> = -1</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;};</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#endif // GRPCXX_STATUS_CODE_ENUM_H</span></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba671e44044d68f82be37c8ec3b0a9c449">grpc::PERMISSION_DENIED</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:79</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba87779003bbcfd441fd0ef335c13cb2c3">grpc::UNAVAILABLE</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:148</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf48ac5527afcabd618d8b86f2de45b9b">grpc::ALREADY_EXISTS</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:71</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7f49e2cd3c20ab00710f61d7dbb88aa2">grpc::FAILED_PRECONDITION</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:108</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac956d5194137e0238de8544479133688">grpc::DATA_LOSS</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:151</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baf6f3078af147d683afc70e09695c7a65">grpc::OK</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:41</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43b"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43b">grpc::StatusCode</a></div><div class="ttdeci">StatusCode</div><div class="ttdef"><b>Definition:</b> status_code_enum.h:39</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba7216941fd727fb92d71e10d85bfa5234">grpc::DO_NOT_USE</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:154</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8387a7175771975bee404def25236b0c">grpc::ABORTED</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:115</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bac3ef309c0b3f1c8a01265fa1a39ae4b2">grpc::CANCELLED</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:44</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43baed5a57c7db66fbdf1860e81edf716628">grpc::DEADLINE_EXCEEDED</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:64</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba8d75876e087d1950914920f499d4a8d2">grpc::INVALID_ARGUMENT</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:57</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba31d8b2f1f3307ed261328cb3eece163b">grpc::UNIMPLEMENTED</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:135</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba663615dcb59881e3fe4206066666086f">grpc::RESOURCE_EXHAUSTED</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:87</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bae5d4bec40cae17f03007d4febf36c8f5">grpc::NOT_FOUND</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:67</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43bab32b226dd4ccbe5b70fbceb3a915b256">grpc::UNKNOWN</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:51</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43babb9d017cdfdd51b177b3591301c42901">grpc::OUT_OF_RANGE</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:132</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba0ae30536146394965fd8ad64c2d414f3">grpc::INTERNAL</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:140</div></div>
+<div class="ttc" id="namespacegrpc_html_aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e"><div class="ttname"><a href="namespacegrpc.html#aff1730578c90160528f6a8d67ef5c43ba4290323b58d11554a249a870532c908e">grpc::UNAUTHENTICATED</a></div><div class="ttdef"><b>Definition:</b> status_code_enum.h:83</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/stream_8h.html b/doc/ref/c++/html/stream_8h.html
new file mode 100644
index 0000000000..077629524e
--- /dev/null
+++ b/doc/ref/c++/html/stream_8h.html
@@ -0,0 +1,170 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/stream.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">stream.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="channel__interface_8h_source.html">grpc++/channel_interface.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="client__context_8h_source.html">grpc++/client_context.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="completion__queue_8h_source.html">grpc++/completion_queue.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="server__context_8h_source.html">grpc++/server_context.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="call_8h_source.html">grpc++/impl/call.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="service__type_8h_source.html">grpc++/impl/service_type.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="status_8h_source.html">grpc++/status.h</a>&gt;</code><br/>
+<code>#include &lt;grpc/support/log.h&gt;</code><br/>
+</div>
+<p><a href="stream_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_interface.html">grpc::ClientReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader.html">grpc::ClientReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer_interface.html">grpc::ClientWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_writer.html">grpc::ClientWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer_interface.html">grpc::ClientReaderWriterInterface&lt; W, R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader.html">grpc::ServerReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_writer.html">grpc::ServerWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_reader_writer.html">grpc::ServerReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_interface.html">grpc::ClientAsyncReaderInterface&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader&lt; R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer_interface.html">grpc::ClientAsyncWriterInterface&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer_interface.html">grpc::ClientAsyncReaderWriterInterface&lt; W, R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader.html">grpc::ServerAsyncReader&lt; W, R &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_writer.html">grpc::ServerAsyncWriter&lt; W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_writer.html">grpc::ServerAsyncReaderWriter&lt; R, W &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/stream_8h_source.html b/doc/ref/c++/html/stream_8h_source.html
new file mode 100644
index 0000000000..4e67e40283
--- /dev/null
+++ b/doc/ref/c++/html/stream_8h_source.html
@@ -0,0 +1,994 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/stream.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">stream.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="stream_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_STREAM_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_STREAM_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="channel__interface_8h.html">grpc++/channel_interface.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="client__context_8h.html">grpc++/client_context.h</a>&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="completion__queue_8h.html">grpc++/completion_queue.h</a>&gt;</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="server__context_8h.html">grpc++/server_context.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="call_8h.html">grpc++/impl/call.h</a>&gt;</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="service__type_8h.html">grpc++/impl/service_type.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="status_8h.html">grpc++/status.h</a>&gt;</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;grpc/support/log.h&gt;</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment">// Common interface for all client side streaming.</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_streaming_interface.html"> 49</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_streaming_interface.html">ClientStreamingInterface</a> {</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e"> 51</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">~ClientStreamingInterface</a>() {}</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// Wait until the stream finishes, and return the final status. When the</span></div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="comment">// client side declares it has no more message to send, either implicitly or</span></div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="comment">// by calling WritesDone, it needs to make sure there is no more message to</span></div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="comment">// be received from the server, either implicitly or by getting a false from</span></div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="comment">// a Read(). Otherwise, this implicitly cancels the stream.</span></div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">Finish</a>() = 0;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;};</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="comment">// An interface that yields a sequence of R messages.</span></div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="classgrpc_1_1_reader_interface.html"> 63</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_reader_interface.html">ReaderInterface</a> {</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5"> 65</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">~ReaderInterface</a>() {}</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="comment">// Blocking read a message and parse to msg. Returns true on success.</span></div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="comment">// The method returns false when there will be no more incoming messages,</span></div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="comment">// either because the other side has called WritesDone or the stream has</span></div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">// failed (or been cancelled).</span></div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">Read</a>(R* msg) = 0;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;};</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment">// An interface that can be fed a sequence of W messages.</span></div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="classgrpc_1_1_writer_interface.html"> 76</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_writer_interface.html">WriterInterface</a> {</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75"> 78</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">~WriterInterface</a>() {}</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">// Blocking write msg to the stream. Returns true on success.</span></div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">// Returns false when the stream has been closed.</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; options) = 0;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a"> 84</a></span>&#160; <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">Write</a>(<span class="keyword">const</span> W&amp; msg) {</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">Write</a>(msg, <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>());</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;};</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_interface.html"> 90</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_reader_interface.html">ClientReaderInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_streaming_interface.html">ClientStreamingInterface</a>,</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_reader_interface.html">ReaderInterface</a>&lt;R&gt; {</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19">WaitForInitialMetadata</a>() = 0;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;};</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_reader.html">ClientReader</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_reader_interface.html">ClientReaderInterface</a>&lt;R&gt; {</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="comment">// Blocking create a stream and write the first request out.</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56"> 101</a></span>&#160; <a class="code" href="classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56">ClientReader</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method,</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context, <span class="keyword">const</span> W&amp; request)</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; : context_(context), call_(channel-&gt;CreateCall(method, context, &amp;cq_)) {</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet</a>&lt;<a class="code" href="classgrpc_1_1_call_op_send_initial_metadata.html">CallOpSendInitialMetadata</a>, <a class="code" href="classgrpc_1_1_call_op_send_message.html">CallOpSendMessage</a>,</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="classgrpc_1_1_call_op_client_send_close.html">CallOpClientSendClose</a>&gt; ops;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; ops.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// TODO(ctiller): don&#39;t assert</span></div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; GPR_ASSERT(ops.SendMessage(request).ok());</div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; ops.<a class="code" href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc">ClientSendClose</a>();</div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; cq_.Pluck(&amp;ops);</div>
+<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</div>
+<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
+<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">// Blocking wait for initial metadata from server. The received metadata</span></div>
+<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="comment">// can only be accessed after this call returns. Should only be called before</span></div>
+<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="comment">// the first read. Calling this method is optional, and if it is not called</span></div>
+<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="comment">// the metadata will be available in ClientContext after the first read.</span></div>
+<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e"> 118</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e">WaitForInitialMetadata</a>() {</div>
+<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; GPR_ASSERT(!context_-&gt;initial_metadata_received_);</div>
+<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;</div>
+<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata&gt;</a> ops;</div>
+<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; ops.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; cq_.Pluck(&amp;ops); <span class="comment">// status ignored</span></div>
+<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; }</div>
+<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div>
+<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7"> 127</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7">Read</a>(R* msg) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata, CallOpRecvMessage&lt;R&gt;</a>&gt; ops;</div>
+<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; ops.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; }</div>
+<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; ops.RecvMessage(msg);</div>
+<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> cq_.Pluck(&amp;ops) &amp;&amp; ops.got_message;</div>
+<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; }</div>
+<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
+<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df"> 137</a></span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df">Finish</a>() <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpClientRecvStatus&gt;</a> ops;</div>
+<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status;</div>
+<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; ops.ClientRecvStatus(context_, &amp;status);</div>
+<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; GPR_ASSERT(cq_.Pluck(&amp;ops));</div>
+<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">return</span> status;</div>
+<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; }</div>
+<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;</div>
+<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context_;</div>
+<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> cq_;</div>
+<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call_;</div>
+<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;};</div>
+<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
+<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_writer_interface.html"> 153</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_writer_interface.html">ClientWriterInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_streaming_interface.html">ClientStreamingInterface</a>,</div>
+<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_writer_interface.html">WriterInterface</a>&lt;W&gt; {</div>
+<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5">WritesDone</a>() = 0;</div>
+<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;};</div>
+<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
+<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_writer.html">ClientWriter</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_writer_interface.html">ClientWriterInterface</a>&lt;W&gt; {</div>
+<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="comment">// Blocking create a stream.</span></div>
+<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe"> 164</a></span>&#160; <a class="code" href="classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe">ClientWriter</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method,</div>
+<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context, R* response)</div>
+<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; : context_(context), call_(channel-&gt;CreateCall(method, context, &amp;cq_)) {</div>
+<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; finish_ops_.RecvMessage(response);</div>
+<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
+<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata&gt;</a> ops;</div>
+<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; ops.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; cq_.Pluck(&amp;ops);</div>
+<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
+<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;</div>
+<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keyword">using</span> <a class="code" href="classgrpc_1_1_writer_interface.html">WriterInterface&lt;W&gt;::Write</a>;</div>
+<div class="line"><a name="l00176"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36"> 176</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; options) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendMessage&gt;</a> ops;</div>
+<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keywordflow">if</span> (!ops.SendMessage(msg, options).ok()) {</div>
+<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div>
+<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <span class="keywordflow">return</span> cq_.Pluck(&amp;ops);</div>
+<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; }</div>
+<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div>
+<div class="line"><a name="l00185"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352"> 185</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352">WritesDone</a>() <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpClientSendClose&gt;</a> ops;</div>
+<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; ops.ClientSendClose();</div>
+<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordflow">return</span> cq_.Pluck(&amp;ops);</div>
+<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; }</div>
+<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;</div>
+<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="comment">// Read the final response and wait for the final status.</span></div>
+<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658"> 193</a></span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658">Finish</a>() <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status;</div>
+<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; finish_ops_.ClientRecvStatus(context_, &amp;status);</div>
+<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; GPR_ASSERT(cq_.Pluck(&amp;finish_ops_));</div>
+<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; <span class="keywordflow">return</span> status;</div>
+<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; }</div>
+<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div>
+<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context_;</div>
+<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpGenericRecvMessage, CallOpClientRecvStatus&gt;</a> finish_ops_;</div>
+<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> cq_;</div>
+<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call_;</div>
+<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;};</div>
+<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;</div>
+<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="comment">// Client-side interface for bi-directional streaming.</span></div>
+<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer_interface.html"> 210</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_reader_writer_interface.html">ClientReaderWriterInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_streaming_interface.html">ClientStreamingInterface</a>,</div>
+<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_writer_interface.html">WriterInterface</a>&lt;W&gt;,</div>
+<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_reader_interface.html">ReaderInterface</a>&lt;R&gt; {</div>
+<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e">WaitForInitialMetadata</a>() = 0;</div>
+<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8">WritesDone</a>() = 0;</div>
+<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;};</div>
+<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;</div>
+<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_reader_writer.html">ClientReaderWriter</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_reader_writer_interface.html">ClientReaderWriterInterface</a>&lt;W, R&gt; {</div>
+<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="comment">// Blocking create a stream.</span></div>
+<div class="line"><a name="l00222"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc"> 222</a></span>&#160; <a class="code" href="classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc">ClientReaderWriter</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method,</div>
+<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context)</div>
+<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; : context_(context), call_(channel-&gt;CreateCall(method, context, &amp;cq_)) {</div>
+<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata&gt;</a> ops;</div>
+<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; ops.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; cq_.Pluck(&amp;ops);</div>
+<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; }</div>
+<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div>
+<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="comment">// Blocking wait for initial metadata from server. The received metadata</span></div>
+<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="comment">// can only be accessed after this call returns. Should only be called before</span></div>
+<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="comment">// the first read. Calling this method is optional, and if it is not called</span></div>
+<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="comment">// the metadata will be available in ClientContext after the first read.</span></div>
+<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be"> 235</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be">WaitForInitialMetadata</a>() {</div>
+<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; GPR_ASSERT(!context_-&gt;initial_metadata_received_);</div>
+<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;</div>
+<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata&gt;</a> ops;</div>
+<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; ops.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; cq_.Pluck(&amp;ops); <span class="comment">// status ignored</span></div>
+<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; }</div>
+<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;</div>
+<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c"> 244</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c">Read</a>(R* msg) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata, CallOpRecvMessage&lt;R&gt;</a>&gt; ops;</div>
+<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; ops.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; }</div>
+<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; ops.RecvMessage(msg);</div>
+<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; <span class="keywordflow">return</span> cq_.Pluck(&amp;ops) &amp;&amp; ops.got_message;</div>
+<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div>
+<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div>
+<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; <span class="keyword">using</span> <a class="code" href="classgrpc_1_1_writer_interface.html">WriterInterface&lt;W&gt;::Write</a>;</div>
+<div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762"> 255</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; options) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendMessage&gt;</a> ops;</div>
+<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">if</span> (!ops.SendMessage(msg, options).ok()) <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">return</span> cq_.Pluck(&amp;ops);</div>
+<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; }</div>
+<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;</div>
+<div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898"> 262</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898">WritesDone</a>() <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpClientSendClose&gt;</a> ops;</div>
+<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; ops.ClientSendClose();</div>
+<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <span class="keywordflow">return</span> cq_.Pluck(&amp;ops);</div>
+<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div>
+<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;</div>
+<div class="line"><a name="l00269"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116"> 269</a></span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> <a class="code" href="classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116">Finish</a>() <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpClientRecvStatus&gt;</a> ops;</div>
+<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <a class="code" href="classgrpc_1_1_status.html">Status</a> status;</div>
+<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; ops.ClientRecvStatus(context_, &amp;status);</div>
+<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; GPR_ASSERT(cq_.Pluck(&amp;ops));</div>
+<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; <span class="keywordflow">return</span> status;</div>
+<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div>
+<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div>
+<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context_;</div>
+<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a> cq_;</div>
+<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call_;</div>
+<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;};</div>
+<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div>
+<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="keyword">class </span>ServerReader <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> ReaderInterface&lt;R&gt; {</div>
+<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521"> 287</a></span>&#160; <a class="code" href="classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521">ServerReader</a>(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* ctx) : call_(call), ctx_(ctx) {}</div>
+<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;</div>
+<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b"> 289</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b">SendInitialMetadata</a>() {</div>
+<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; GPR_ASSERT(!ctx_-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;</div>
+<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata&gt;</a> ops;</div>
+<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; ops.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; }</div>
+<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;</div>
+<div class="line"><a name="l00299"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0"> 299</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0">Read</a>(R* msg) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvMessage&lt;R&gt;</a>&gt; ops;</div>
+<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; ops.RecvMessage(msg);</div>
+<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">return</span> call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>()-&gt;Pluck(&amp;ops) &amp;&amp; ops.got_message;</div>
+<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; }</div>
+<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;</div>
+<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a>* <span class="keyword">const</span> call_;</div>
+<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* <span class="keyword">const</span> ctx_;</div>
+<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;};</div>
+<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;</div>
+<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;<span class="keyword">class </span>ServerWriter <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> WriterInterface&lt;W&gt; {</div>
+<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2"> 314</a></span>&#160; <a class="code" href="classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2">ServerWriter</a>(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* ctx) : call_(call), ctx_(ctx) {}</div>
+<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;</div>
+<div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274"> 316</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274">SendInitialMetadata</a>() {</div>
+<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; GPR_ASSERT(!ctx_-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;</div>
+<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata&gt;</a> ops;</div>
+<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; ops.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; }</div>
+<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;</div>
+<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <span class="keyword">using</span> <a class="code" href="classgrpc_1_1_writer_interface.html">WriterInterface&lt;W&gt;::Write</a>;</div>
+<div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a"> 327</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; options) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata, CallOpSendMessage&gt;</a> ops;</div>
+<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">if</span> (!ops.SendMessage(msg, options).ok()) {</div>
+<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; }</div>
+<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; ops.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; }</div>
+<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">return</span> call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; }</div>
+<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;</div>
+<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a>* <span class="keyword">const</span> call_;</div>
+<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* <span class="keyword">const</span> ctx_;</div>
+<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;};</div>
+<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;</div>
+<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="comment">// Server-side interface for bi-directional streaming.</span></div>
+<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<span class="keyword">class </span>ServerReaderWriter <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> WriterInterface&lt;W&gt;,</div>
+<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; <span class="keyword">public</span> ReaderInterface&lt;R&gt; {</div>
+<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00350"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52"> 350</a></span>&#160; <a class="code" href="classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52">ServerReaderWriter</a>(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call, <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* ctx) : call_(call), ctx_(ctx) {}</div>
+<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div>
+<div class="line"><a name="l00352"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5"> 352</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5">SendInitialMetadata</a>() {</div>
+<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; GPR_ASSERT(!ctx_-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;</div>
+<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata&gt;</a> ops;</div>
+<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; ops.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; }</div>
+<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;</div>
+<div class="line"><a name="l00362"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d"> 362</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d">Read</a>(R* msg) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvMessage&lt;R&gt;</a>&gt; ops;</div>
+<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; ops.RecvMessage(msg);</div>
+<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160; <span class="keywordflow">return</span> call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>()-&gt;Pluck(&amp;ops) &amp;&amp; ops.got_message;</div>
+<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; }</div>
+<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;</div>
+<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keyword">using</span> <a class="code" href="classgrpc_1_1_writer_interface.html">WriterInterface&lt;W&gt;::Write</a>;</div>
+<div class="line"><a name="l00370"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467"> 370</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_write_options.html">WriteOptions</a>&amp; options) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata, CallOpSendMessage&gt;</a> ops;</div>
+<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keywordflow">if</span> (!ops.SendMessage(msg, options).ok()) {</div>
+<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; }</div>
+<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; ops.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div>
+<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;ops);</div>
+<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <span class="keywordflow">return</span> call_-&gt;<a class="code" href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">cq</a>()-&gt;Pluck(&amp;ops);</div>
+<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; }</div>
+<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;</div>
+<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a>* <span class="keyword">const</span> call_;</div>
+<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* <span class="keyword">const</span> ctx_;</div>
+<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;};</div>
+<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;</div>
+<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;<span class="comment">// Async interfaces</span></div>
+<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160;<span class="comment">// Common interface for all client side streaming.</span></div>
+<div class="line"><a name="l00390"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_streaming_interface.html"> 390</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a> {</div>
+<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28"> 392</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">~ClientAsyncStreamingInterface</a>() {}</div>
+<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div>
+<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">ReadInitialMetadata</a>(<span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;</div>
+<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">Finish</a>(<a class="code" href="classgrpc_1_1_status.html">Status</a>* status, <span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;};</div>
+<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;</div>
+<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;<span class="comment">// An interface that yields a sequence of R messages.</span></div>
+<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00401"></a><span class="lineno"><a class="line" href="classgrpc_1_1_async_reader_interface.html"> 401</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_async_reader_interface.html">AsyncReaderInterface</a> {</div>
+<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00403"></a><span class="lineno"><a class="line" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379"> 403</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a>() {}</div>
+<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;</div>
+<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">Read</a>(R* msg, <span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160;};</div>
+<div class="line"><a name="l00407"></a><span class="lineno"> 407</span>&#160;</div>
+<div class="line"><a name="l00408"></a><span class="lineno"> 408</span>&#160;<span class="comment">// An interface that can be fed a sequence of W messages.</span></div>
+<div class="line"><a name="l00409"></a><span class="lineno"> 409</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00410"></a><span class="lineno"><a class="line" href="classgrpc_1_1_async_writer_interface.html"> 410</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_async_writer_interface.html">AsyncWriterInterface</a> {</div>
+<div class="line"><a name="l00411"></a><span class="lineno"> 411</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00412"></a><span class="lineno"><a class="line" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd"> 412</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">~AsyncWriterInterface</a>() {}</div>
+<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160;</div>
+<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;};</div>
+<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;</div>
+<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00418"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_interface.html"> 418</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_reader_interface.html">ClientAsyncReaderInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a>,</div>
+<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_async_reader_interface.html">AsyncReaderInterface</a>&lt;R&gt; {};</div>
+<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;</div>
+<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_reader.html">ClientAsyncReader</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_async_reader_interface.html">ClientAsyncReaderInterface</a>&lt;R&gt; {</div>
+<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <span class="comment">// Create a stream and write the first request out.</span></div>
+<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00426"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4"> 426</a></span>&#160; <a class="code" href="classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4">ClientAsyncReader</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq,</div>
+<div class="line"><a name="l00427"></a><span class="lineno"> 427</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method, <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context,</div>
+<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <span class="keyword">const</span> W&amp; request, <span class="keywordtype">void</span>* tag)</div>
+<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160; : context_(context), call_(channel-&gt;CreateCall(method, context, cq)) {</div>
+<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; init_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00431"></a><span class="lineno"> 431</span>&#160; init_ops_.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00432"></a><span class="lineno"> 432</span>&#160; <span class="comment">// TODO(ctiller): don&#39;t assert</span></div>
+<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; GPR_ASSERT(init_ops_.SendMessage(request).ok());</div>
+<div class="line"><a name="l00434"></a><span class="lineno"> 434</span>&#160; init_ops_.ClientSendClose();</div>
+<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;init_ops_);</div>
+<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; }</div>
+<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160;</div>
+<div class="line"><a name="l00438"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863"> 438</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863">ReadInitialMetadata</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; GPR_ASSERT(!context_-&gt;initial_metadata_received_);</div>
+<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;</div>
+<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; meta_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; meta_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_ops_);</div>
+<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; }</div>
+<div class="line"><a name="l00445"></a><span class="lineno"> 445</span>&#160;</div>
+<div class="line"><a name="l00446"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d"> 446</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d">Read</a>(R* msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00447"></a><span class="lineno"> 447</span>&#160; read_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00448"></a><span class="lineno"> 448</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00449"></a><span class="lineno"> 449</span>&#160; read_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; }</div>
+<div class="line"><a name="l00451"></a><span class="lineno"> 451</span>&#160; read_ops_.RecvMessage(msg);</div>
+<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;read_ops_);</div>
+<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; }</div>
+<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160;</div>
+<div class="line"><a name="l00455"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f"> 455</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f">Finish</a>(<a class="code" href="classgrpc_1_1_status.html">Status</a>* status, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; finish_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; finish_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; }</div>
+<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; finish_ops_.ClientRecvStatus(context_, status);</div>
+<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; }</div>
+<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;</div>
+<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context_;</div>
+<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call_;</div>
+<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata, CallOpSendMessage, CallOpClientSendClose&gt;</a></div>
+<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; init_ops_;</div>
+<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata&gt;</a> meta_ops_;</div>
+<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata, CallOpRecvMessage&lt;R&gt;</a>&gt; read_ops_;</div>
+<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata, CallOpClientRecvStatus&gt;</a> finish_ops_;</div>
+<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160;};</div>
+<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160;</div>
+<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00475"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_writer_interface.html"> 475</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_writer_interface.html">ClientAsyncWriterInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a>,</div>
+<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_async_writer_interface.html">AsyncWriterInterface</a>&lt;W&gt; {</div>
+<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822">WritesDone</a>(<span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160;};</div>
+<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160;</div>
+<div class="line"><a name="l00481"></a><span class="lineno"> 481</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00482"></a><span class="lineno"> 482</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_writer.html">ClientAsyncWriter</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_async_writer_interface.html">ClientAsyncWriterInterface</a>&lt;W&gt; {</div>
+<div class="line"><a name="l00483"></a><span class="lineno"> 483</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00484"></a><span class="lineno"> 484</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00485"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6"> 485</a></span>&#160; <a class="code" href="classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6">ClientAsyncWriter</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq,</div>
+<div class="line"><a name="l00486"></a><span class="lineno"> 486</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method, <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context,</div>
+<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; R* response, <span class="keywordtype">void</span>* tag)</div>
+<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; : context_(context), call_(channel-&gt;CreateCall(method, context, cq)) {</div>
+<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; finish_ops_.RecvMessage(response);</div>
+<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160;</div>
+<div class="line"><a name="l00491"></a><span class="lineno"> 491</span>&#160; init_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00492"></a><span class="lineno"> 492</span>&#160; init_ops_.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00493"></a><span class="lineno"> 493</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;init_ops_);</div>
+<div class="line"><a name="l00494"></a><span class="lineno"> 494</span>&#160; }</div>
+<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160;</div>
+<div class="line"><a name="l00496"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7"> 496</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7">ReadInitialMetadata</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; GPR_ASSERT(!context_-&gt;initial_metadata_received_);</div>
+<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div>
+<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; meta_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; meta_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_ops_);</div>
+<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; }</div>
+<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160;</div>
+<div class="line"><a name="l00504"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a"> 504</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00505"></a><span class="lineno"> 505</span>&#160; write_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00506"></a><span class="lineno"> 506</span>&#160; <span class="comment">// TODO(ctiller): don&#39;t assert</span></div>
+<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; GPR_ASSERT(write_ops_.SendMessage(msg).ok());</div>
+<div class="line"><a name="l00508"></a><span class="lineno"> 508</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;write_ops_);</div>
+<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; }</div>
+<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160;</div>
+<div class="line"><a name="l00511"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47"> 511</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47">WritesDone</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; writes_done_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00513"></a><span class="lineno"> 513</span>&#160; writes_done_ops_.ClientSendClose();</div>
+<div class="line"><a name="l00514"></a><span class="lineno"> 514</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;writes_done_ops_);</div>
+<div class="line"><a name="l00515"></a><span class="lineno"> 515</span>&#160; }</div>
+<div class="line"><a name="l00516"></a><span class="lineno"> 516</span>&#160;</div>
+<div class="line"><a name="l00517"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b"> 517</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b">Finish</a>(<a class="code" href="classgrpc_1_1_status.html">Status</a>* status, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00518"></a><span class="lineno"> 518</span>&#160; finish_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; finish_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; }</div>
+<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; finish_ops_.ClientRecvStatus(context_, status);</div>
+<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; }</div>
+<div class="line"><a name="l00525"></a><span class="lineno"> 525</span>&#160;</div>
+<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00527"></a><span class="lineno"> 527</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context_;</div>
+<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call_;</div>
+<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata&gt;</a> init_ops_;</div>
+<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata&gt;</a> meta_ops_;</div>
+<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendMessage&gt;</a> write_ops_;</div>
+<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpClientSendClose&gt;</a> writes_done_ops_;</div>
+<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet</a>&lt;<a class="code" href="classgrpc_1_1_call_op_recv_initial_metadata.html">CallOpRecvInitialMetadata</a>, <a class="code" href="classgrpc_1_1_call_op_generic_recv_message.html">CallOpGenericRecvMessage</a>,</div>
+<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; <a class="code" href="classgrpc_1_1_call_op_client_recv_status.html">CallOpClientRecvStatus</a>&gt; finish_ops_;</div>
+<div class="line"><a name="l00535"></a><span class="lineno"> 535</span>&#160;};</div>
+<div class="line"><a name="l00536"></a><span class="lineno"> 536</span>&#160;</div>
+<div class="line"><a name="l00537"></a><span class="lineno"> 537</span>&#160;<span class="comment">// Client-side interface for bi-directional streaming.</span></div>
+<div class="line"><a name="l00538"></a><span class="lineno"> 538</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00539"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer_interface.html"> 539</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_reader_writer_interface.html">ClientAsyncReaderWriterInterface</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_async_streaming_interface.html">ClientAsyncStreamingInterface</a>,</div>
+<div class="line"><a name="l00540"></a><span class="lineno"> 540</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_async_writer_interface.html">AsyncWriterInterface</a>&lt;W&gt;,</div>
+<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_async_reader_interface.html">AsyncReaderInterface</a>&lt;R&gt; {</div>
+<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3">WritesDone</a>(<span class="keywordtype">void</span>* tag) = 0;</div>
+<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160;};</div>
+<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160;</div>
+<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a> <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div>
+<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160; : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer_interface.html">ClientAsyncReaderWriterInterface</a>&lt;W, R&gt; {</div>
+<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00550"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066"> 550</a></span>&#160; <a class="code" href="classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066">ClientAsyncReaderWriter</a>(<a class="code" href="classgrpc_1_1_channel_interface.html">ChannelInterface</a>* channel, <a class="code" href="classgrpc_1_1_completion_queue.html">CompletionQueue</a>* cq,</div>
+<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_rpc_method.html">RpcMethod</a>&amp; method, <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context,</div>
+<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordtype">void</span>* tag)</div>
+<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; : context_(context), call_(channel-&gt;CreateCall(method, context, cq)) {</div>
+<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; init_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00555"></a><span class="lineno"> 555</span>&#160; init_ops_.SendInitialMetadata(context-&gt;send_initial_metadata_);</div>
+<div class="line"><a name="l00556"></a><span class="lineno"> 556</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;init_ops_);</div>
+<div class="line"><a name="l00557"></a><span class="lineno"> 557</span>&#160; }</div>
+<div class="line"><a name="l00558"></a><span class="lineno"> 558</span>&#160;</div>
+<div class="line"><a name="l00559"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162"> 559</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162">ReadInitialMetadata</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; GPR_ASSERT(!context_-&gt;initial_metadata_received_);</div>
+<div class="line"><a name="l00561"></a><span class="lineno"> 561</span>&#160;</div>
+<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; meta_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; meta_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_ops_);</div>
+<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; }</div>
+<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160;</div>
+<div class="line"><a name="l00567"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f"> 567</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f">Read</a>(R* msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160; read_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160; read_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; }</div>
+<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160; read_ops_.RecvMessage(msg);</div>
+<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;read_ops_);</div>
+<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; }</div>
+<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160;</div>
+<div class="line"><a name="l00576"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3"> 576</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; write_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <span class="comment">// TODO(ctiller): don&#39;t assert</span></div>
+<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; GPR_ASSERT(write_ops_.SendMessage(msg).ok());</div>
+<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;write_ops_);</div>
+<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; }</div>
+<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160;</div>
+<div class="line"><a name="l00583"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637"> 583</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637">WritesDone</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; writes_done_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; writes_done_ops_.ClientSendClose();</div>
+<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;writes_done_ops_);</div>
+<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; }</div>
+<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160;</div>
+<div class="line"><a name="l00589"></a><span class="lineno"><a class="line" href="classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23"> 589</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23">Finish</a>(<a class="code" href="classgrpc_1_1_status.html">Status</a>* status, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160; finish_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00591"></a><span class="lineno"> 591</span>&#160; <span class="keywordflow">if</span> (!context_-&gt;initial_metadata_received_) {</div>
+<div class="line"><a name="l00592"></a><span class="lineno"> 592</span>&#160; finish_ops_.RecvInitialMetadata(context_);</div>
+<div class="line"><a name="l00593"></a><span class="lineno"> 593</span>&#160; }</div>
+<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160; finish_ops_.ClientRecvStatus(context_, status);</div>
+<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160; }</div>
+<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;</div>
+<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00599"></a><span class="lineno"> 599</span>&#160; <a class="code" href="classgrpc_1_1_client_context.html">ClientContext</a>* context_;</div>
+<div class="line"><a name="l00600"></a><span class="lineno"> 600</span>&#160; <a class="code" href="classgrpc_1_1_call.html">Call</a> call_;</div>
+<div class="line"><a name="l00601"></a><span class="lineno"> 601</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendInitialMetadata&gt;</a> init_ops_;</div>
+<div class="line"><a name="l00602"></a><span class="lineno"> 602</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata&gt;</a> meta_ops_;</div>
+<div class="line"><a name="l00603"></a><span class="lineno"> 603</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata, CallOpRecvMessage&lt;R&gt;</a>&gt; read_ops_;</div>
+<div class="line"><a name="l00604"></a><span class="lineno"> 604</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpSendMessage&gt;</a> write_ops_;</div>
+<div class="line"><a name="l00605"></a><span class="lineno"> 605</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpClientSendClose&gt;</a> writes_done_ops_;</div>
+<div class="line"><a name="l00606"></a><span class="lineno"> 606</span>&#160; <a class="code" href="classgrpc_1_1_call_op_set.html">CallOpSet&lt;CallOpRecvInitialMetadata, CallOpClientRecvStatus&gt;</a> finish_ops_;</div>
+<div class="line"><a name="l00607"></a><span class="lineno"> 607</span>&#160;};</div>
+<div class="line"><a name="l00608"></a><span class="lineno"> 608</span>&#160;</div>
+<div class="line"><a name="l00609"></a><span class="lineno"> 609</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00610"></a><span class="lineno"> 610</span>&#160;<span class="keyword">class </span>ServerAsyncReader <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> ServerAsyncStreamingInterface,</div>
+<div class="line"><a name="l00611"></a><span class="lineno"> 611</span>&#160; <span class="keyword">public</span> AsyncReaderInterface&lt;R&gt; {</div>
+<div class="line"><a name="l00612"></a><span class="lineno"> 612</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00613"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e"> 613</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e">ServerAsyncReader</a>(<a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* ctx)</div>
+<div class="line"><a name="l00614"></a><span class="lineno"> 614</span>&#160; : call_(nullptr, nullptr, nullptr), ctx_(ctx) {}</div>
+<div class="line"><a name="l00615"></a><span class="lineno"> 615</span>&#160;</div>
+<div class="line"><a name="l00616"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6"> 616</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6">SendInitialMetadata</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00617"></a><span class="lineno"> 617</span>&#160; GPR_ASSERT(!ctx_-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00618"></a><span class="lineno"> 618</span>&#160;</div>
+<div class="line"><a name="l00619"></a><span class="lineno"> 619</span>&#160; meta_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00620"></a><span class="lineno"> 620</span>&#160; meta_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00621"></a><span class="lineno"> 621</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00622"></a><span class="lineno"> 622</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_ops_);</div>
+<div class="line"><a name="l00623"></a><span class="lineno"> 623</span>&#160; }</div>
+<div class="line"><a name="l00624"></a><span class="lineno"> 624</span>&#160;</div>
+<div class="line"><a name="l00625"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f"> 625</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f">Read</a>(R* msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00626"></a><span class="lineno"> 626</span>&#160; read_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160; read_ops_.RecvMessage(msg);</div>
+<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;read_ops_);</div>
+<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; }</div>
+<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160;</div>
+<div class="line"><a name="l00631"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59"> 631</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59">Finish</a>(<span class="keyword">const</span> W&amp; msg, <span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; status, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; finish_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00634"></a><span class="lineno"> 634</span>&#160; finish_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00635"></a><span class="lineno"> 635</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160; }</div>
+<div class="line"><a name="l00637"></a><span class="lineno"> 637</span>&#160; <span class="comment">// The response is dropped if the status is not OK.</span></div>
+<div class="line"><a name="l00638"></a><span class="lineno"> 638</span>&#160; <span class="keywordflow">if</span> (status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>()) {</div>
+<div class="line"><a name="l00639"></a><span class="lineno"> 639</span>&#160; finish_ops_.ServerSendStatus(</div>
+<div class="line"><a name="l00640"></a><span class="lineno"> 640</span>&#160; ctx_-&gt;trailing_metadata_,</div>
+<div class="line"><a name="l00641"></a><span class="lineno"> 641</span>&#160; finish_ops_.SendMessage(msg));</div>
+<div class="line"><a name="l00642"></a><span class="lineno"> 642</span>&#160; } <span class="keywordflow">else</span> {</div>
+<div class="line"><a name="l00643"></a><span class="lineno"> 643</span>&#160; finish_ops_.ServerSendStatus(ctx_-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00644"></a><span class="lineno"> 644</span>&#160; }</div>
+<div class="line"><a name="l00645"></a><span class="lineno"> 645</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00646"></a><span class="lineno"> 646</span>&#160; }</div>
+<div class="line"><a name="l00647"></a><span class="lineno"> 647</span>&#160;</div>
+<div class="line"><a name="l00648"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb"> 648</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb">FinishWithError</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; status, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00649"></a><span class="lineno"> 649</span>&#160; GPR_ASSERT(!status.<a class="code" href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">ok</a>());</div>
+<div class="line"><a name="l00650"></a><span class="lineno"> 650</span>&#160; finish_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00651"></a><span class="lineno"> 651</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00652"></a><span class="lineno"> 652</span>&#160; finish_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00653"></a><span class="lineno"> 653</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00654"></a><span class="lineno"> 654</span>&#160; }</div>
+<div class="line"><a name="l00655"></a><span class="lineno"> 655</span>&#160; finish_ops_.ServerSendStatus(ctx_-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00656"></a><span class="lineno"> 656</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00657"></a><span class="lineno"> 657</span>&#160; }</div>
+<div class="line"><a name="l00658"></a><span class="lineno"> 658</span>&#160;</div>
+<div class="line"><a name="l00659"></a><span class="lineno"> 659</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00660"></a><span class="lineno"> 660</span>&#160; <span class="keywordtype">void</span> BindCall(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> { call_ = *call; }</div>
+<div class="line"><a name="l00661"></a><span class="lineno"> 661</span>&#160;</div>
+<div class="line"><a name="l00662"></a><span class="lineno"> 662</span>&#160; Call call_;</div>
+<div class="line"><a name="l00663"></a><span class="lineno"> 663</span>&#160; ServerContext* ctx_;</div>
+<div class="line"><a name="l00664"></a><span class="lineno"> 664</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata&gt; meta_ops_;</div>
+<div class="line"><a name="l00665"></a><span class="lineno"> 665</span>&#160; CallOpSet&lt;CallOpRecvMessage&lt;R&gt;&gt; read_ops_;</div>
+<div class="line"><a name="l00666"></a><span class="lineno"> 666</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata, CallOpSendMessage,</div>
+<div class="line"><a name="l00667"></a><span class="lineno"> 667</span>&#160; CallOpServerSendStatus&gt; finish_ops_;</div>
+<div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;};</div>
+<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160;</div>
+<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W&gt;</div>
+<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160;<span class="keyword">class </span>ServerAsyncWriter <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> ServerAsyncStreamingInterface,</div>
+<div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keyword">public</span> AsyncWriterInterface&lt;W&gt; {</div>
+<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00674"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2"> 674</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2">ServerAsyncWriter</a>(<a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* ctx)</div>
+<div class="line"><a name="l00675"></a><span class="lineno"> 675</span>&#160; : call_(nullptr, nullptr, nullptr), ctx_(ctx) {}</div>
+<div class="line"><a name="l00676"></a><span class="lineno"> 676</span>&#160;</div>
+<div class="line"><a name="l00677"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455"> 677</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455">SendInitialMetadata</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00678"></a><span class="lineno"> 678</span>&#160; GPR_ASSERT(!ctx_-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00679"></a><span class="lineno"> 679</span>&#160;</div>
+<div class="line"><a name="l00680"></a><span class="lineno"> 680</span>&#160; meta_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00681"></a><span class="lineno"> 681</span>&#160; meta_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00682"></a><span class="lineno"> 682</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00683"></a><span class="lineno"> 683</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_ops_);</div>
+<div class="line"><a name="l00684"></a><span class="lineno"> 684</span>&#160; }</div>
+<div class="line"><a name="l00685"></a><span class="lineno"> 685</span>&#160;</div>
+<div class="line"><a name="l00686"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5"> 686</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00687"></a><span class="lineno"> 687</span>&#160; write_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00688"></a><span class="lineno"> 688</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00689"></a><span class="lineno"> 689</span>&#160; write_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00690"></a><span class="lineno"> 690</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00691"></a><span class="lineno"> 691</span>&#160; }</div>
+<div class="line"><a name="l00692"></a><span class="lineno"> 692</span>&#160; <span class="comment">// TODO(ctiller): don&#39;t assert</span></div>
+<div class="line"><a name="l00693"></a><span class="lineno"> 693</span>&#160; GPR_ASSERT(write_ops_.SendMessage(msg).ok());</div>
+<div class="line"><a name="l00694"></a><span class="lineno"> 694</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;write_ops_);</div>
+<div class="line"><a name="l00695"></a><span class="lineno"> 695</span>&#160; }</div>
+<div class="line"><a name="l00696"></a><span class="lineno"> 696</span>&#160;</div>
+<div class="line"><a name="l00697"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004"> 697</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004">Finish</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; status, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00698"></a><span class="lineno"> 698</span>&#160; finish_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00699"></a><span class="lineno"> 699</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00700"></a><span class="lineno"> 700</span>&#160; finish_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00701"></a><span class="lineno"> 701</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00702"></a><span class="lineno"> 702</span>&#160; }</div>
+<div class="line"><a name="l00703"></a><span class="lineno"> 703</span>&#160; finish_ops_.ServerSendStatus(ctx_-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00704"></a><span class="lineno"> 704</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00705"></a><span class="lineno"> 705</span>&#160; }</div>
+<div class="line"><a name="l00706"></a><span class="lineno"> 706</span>&#160;</div>
+<div class="line"><a name="l00707"></a><span class="lineno"> 707</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00708"></a><span class="lineno"> 708</span>&#160; <span class="keywordtype">void</span> BindCall(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> { call_ = *call; }</div>
+<div class="line"><a name="l00709"></a><span class="lineno"> 709</span>&#160;</div>
+<div class="line"><a name="l00710"></a><span class="lineno"> 710</span>&#160; Call call_;</div>
+<div class="line"><a name="l00711"></a><span class="lineno"> 711</span>&#160; ServerContext* ctx_;</div>
+<div class="line"><a name="l00712"></a><span class="lineno"> 712</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata&gt; meta_ops_;</div>
+<div class="line"><a name="l00713"></a><span class="lineno"> 713</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata, CallOpSendMessage&gt; write_ops_;</div>
+<div class="line"><a name="l00714"></a><span class="lineno"> 714</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata, CallOpServerSendStatus&gt; finish_ops_;</div>
+<div class="line"><a name="l00715"></a><span class="lineno"> 715</span>&#160;};</div>
+<div class="line"><a name="l00716"></a><span class="lineno"> 716</span>&#160;</div>
+<div class="line"><a name="l00717"></a><span class="lineno"> 717</span>&#160;<span class="comment">// Server-side interface for bi-directional streaming.</span></div>
+<div class="line"><a name="l00718"></a><span class="lineno"> 718</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> W, <span class="keyword">class</span> R&gt;</div>
+<div class="line"><a name="l00719"></a><span class="lineno"> 719</span>&#160;<span class="keyword">class </span>ServerAsyncReaderWriter <a class="code" href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a> : <span class="keyword">public</span> ServerAsyncStreamingInterface,</div>
+<div class="line"><a name="l00720"></a><span class="lineno"> 720</span>&#160; <span class="keyword">public</span> AsyncWriterInterface&lt;W&gt;,</div>
+<div class="line"><a name="l00721"></a><span class="lineno"> 721</span>&#160; <span class="keyword">public</span> AsyncReaderInterface&lt;R&gt; {</div>
+<div class="line"><a name="l00722"></a><span class="lineno"> 722</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00723"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef"> 723</a></span>&#160; <span class="keyword">explicit</span> <a class="code" href="classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef">ServerAsyncReaderWriter</a>(<a class="code" href="classgrpc_1_1_server_context.html">ServerContext</a>* ctx)</div>
+<div class="line"><a name="l00724"></a><span class="lineno"> 724</span>&#160; : call_(nullptr, nullptr, nullptr), ctx_(ctx) {}</div>
+<div class="line"><a name="l00725"></a><span class="lineno"> 725</span>&#160;</div>
+<div class="line"><a name="l00726"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533"> 726</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533">SendInitialMetadata</a>(<span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00727"></a><span class="lineno"> 727</span>&#160; GPR_ASSERT(!ctx_-&gt;sent_initial_metadata_);</div>
+<div class="line"><a name="l00728"></a><span class="lineno"> 728</span>&#160;</div>
+<div class="line"><a name="l00729"></a><span class="lineno"> 729</span>&#160; meta_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00730"></a><span class="lineno"> 730</span>&#160; meta_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00731"></a><span class="lineno"> 731</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;meta_ops_);</div>
+<div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; }</div>
+<div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160;</div>
+<div class="line"><a name="l00735"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a"> 735</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a">Read</a>(R* msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; read_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; read_ops_.RecvMessage(msg);</div>
+<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;read_ops_);</div>
+<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; }</div>
+<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160;</div>
+<div class="line"><a name="l00741"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35"> 741</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35">Write</a>(<span class="keyword">const</span> W&amp; msg, <span class="keywordtype">void</span>* tag) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> {</div>
+<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; write_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; write_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; }</div>
+<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; <span class="comment">// TODO(ctiller): don&#39;t assert</span></div>
+<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; GPR_ASSERT(write_ops_.SendMessage(msg).ok());</div>
+<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;write_ops_);</div>
+<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160; }</div>
+<div class="line"><a name="l00751"></a><span class="lineno"> 751</span>&#160;</div>
+<div class="line"><a name="l00752"></a><span class="lineno"><a class="line" href="classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5"> 752</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5">Finish</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1_status.html">Status</a>&amp; status, <span class="keywordtype">void</span>* tag) {</div>
+<div class="line"><a name="l00753"></a><span class="lineno"> 753</span>&#160; finish_ops_.set_output_tag(tag);</div>
+<div class="line"><a name="l00754"></a><span class="lineno"> 754</span>&#160; <span class="keywordflow">if</span> (!ctx_-&gt;sent_initial_metadata_) {</div>
+<div class="line"><a name="l00755"></a><span class="lineno"> 755</span>&#160; finish_ops_.SendInitialMetadata(ctx_-&gt;initial_metadata_);</div>
+<div class="line"><a name="l00756"></a><span class="lineno"> 756</span>&#160; ctx_-&gt;sent_initial_metadata_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00757"></a><span class="lineno"> 757</span>&#160; }</div>
+<div class="line"><a name="l00758"></a><span class="lineno"> 758</span>&#160; finish_ops_.ServerSendStatus(ctx_-&gt;trailing_metadata_, status);</div>
+<div class="line"><a name="l00759"></a><span class="lineno"> 759</span>&#160; call_.<a class="code" href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">PerformOps</a>(&amp;finish_ops_);</div>
+<div class="line"><a name="l00760"></a><span class="lineno"> 760</span>&#160; }</div>
+<div class="line"><a name="l00761"></a><span class="lineno"> 761</span>&#160;</div>
+<div class="line"><a name="l00762"></a><span class="lineno"> 762</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00763"></a><span class="lineno"> 763</span>&#160; <span class="keywordtype">void</span> BindCall(<a class="code" href="classgrpc_1_1_call.html">Call</a>* call) <a class="code" href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a> { call_ = *call; }</div>
+<div class="line"><a name="l00764"></a><span class="lineno"> 764</span>&#160;</div>
+<div class="line"><a name="l00765"></a><span class="lineno"> 765</span>&#160; Call call_;</div>
+<div class="line"><a name="l00766"></a><span class="lineno"> 766</span>&#160; ServerContext* ctx_;</div>
+<div class="line"><a name="l00767"></a><span class="lineno"> 767</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata&gt; meta_ops_;</div>
+<div class="line"><a name="l00768"></a><span class="lineno"> 768</span>&#160; CallOpSet&lt;CallOpRecvMessage&lt;R&gt;&gt; read_ops_;</div>
+<div class="line"><a name="l00769"></a><span class="lineno"> 769</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata, CallOpSendMessage&gt; write_ops_;</div>
+<div class="line"><a name="l00770"></a><span class="lineno"> 770</span>&#160; CallOpSet&lt;CallOpSendInitialMetadata, CallOpServerSendStatus&gt; finish_ops_;</div>
+<div class="line"><a name="l00771"></a><span class="lineno"> 771</span>&#160;};</div>
+<div class="line"><a name="l00772"></a><span class="lineno"> 772</span>&#160;</div>
+<div class="line"><a name="l00773"></a><span class="lineno"> 773</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00774"></a><span class="lineno"> 774</span>&#160;</div>
+<div class="line"><a name="l00775"></a><span class="lineno"> 775</span>&#160;<span class="preprocessor">#endif // GRPCXX_STREAM_H</span></div>
+<div class="ttc" id="classgrpc_1_1_client_async_streaming_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_async_streaming_interface.html">grpc::ClientAsyncStreamingInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:390</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html">grpc::ClientAsyncReaderWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:70</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_html"><div class="ttname"><a href="classgrpc_1_1_client_reader.html">grpc::ClientReader</a></div><div class="ttdef"><b>Definition:</b> client_context.h:60</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html_adcf4e48162a850ae106e9d2f6fd03d0c"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html#adcf4e48162a850ae106e9d2f6fd03d0c">grpc::ClientReaderWriter::Read</a></div><div class="ttdeci">bool Read(R *msg) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:244</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_writer_interface.html">grpc::ClientWriterInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:153</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_html_a544f9e4c310b251bf3c7b84fd035d20a"><div class="ttname"><a href="classgrpc_1_1_client_async_writer.html#a544f9e4c310b251bf3c7b84fd035d20a">grpc::ClientAsyncWriter::Write</a></div><div class="ttdeci">void Write(const W &amp;msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:504</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_writer_html_a7d8d9d36449700c19cd08ecc608cb96a"><div class="ttname"><a href="classgrpc_1_1_server_async_reader_writer.html#a7d8d9d36449700c19cd08ecc608cb96a">grpc::ServerAsyncReaderWriter::Read</a></div><div class="ttdeci">void Read(R *msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:735</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_html_af9fbf77049c3e5402913c0edeccf3d47"><div class="ttname"><a href="classgrpc_1_1_client_async_writer.html#af9fbf77049c3e5402913c0edeccf3d47">grpc::ClientAsyncWriter::WritesDone</a></div><div class="ttdeci">void WritesDone(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:511</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_interface_html_a6ead554cc1b991f2289b26fb80fdde5e"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer_interface.html#a6ead554cc1b991f2289b26fb80fdde5e">grpc::ClientReaderWriterInterface::WaitForInitialMetadata</a></div><div class="ttdeci">virtual void WaitForInitialMetadata()=0</div></div>
+<div class="ttc" id="completion__queue_8h_html"><div class="ttname"><a href="completion__queue_8h.html">completion_queue.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_a5a7336b857c427aff2a210b89bb4ac14"><div class="ttname"><a href="classgrpc_1_1_call.html#a5a7336b857c427aff2a210b89bb4ac14">grpc::Call::cq</a></div><div class="ttdeci">CompletionQueue * cq()</div><div class="ttdef"><b>Definition:</b> call.h:575</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_writer_html_a91d0c7316a266b7e8f5447a6f3362fe5"><div class="ttname"><a href="classgrpc_1_1_server_reader_writer.html#a91d0c7316a266b7e8f5447a6f3362fe5">grpc::ServerReaderWriter::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata()</div><div class="ttdef"><b>Definition:</b> stream.h:352</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_reader_interface.html">grpc::ClientReaderInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:90</div></div>
+<div class="ttc" id="classgrpc_1_1_server_writer_html_aa53df518d62478d0dbbe6f2f6ec44274"><div class="ttname"><a href="classgrpc_1_1_server_writer.html#aa53df518d62478d0dbbe6f2f6ec44274">grpc::ServerWriter::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata()</div><div class="ttdef"><b>Definition:</b> stream.h:316</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_writer_html_a8dfe4a7bf682d51c423c2cb2a71e8b52"><div class="ttname"><a href="classgrpc_1_1_server_reader_writer.html#a8dfe4a7bf682d51c423c2cb2a71e8b52">grpc::ServerReaderWriter::ServerReaderWriter</a></div><div class="ttdeci">ServerReaderWriter(Call *call, ServerContext *ctx)</div><div class="ttdef"><b>Definition:</b> stream.h:350</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_writer_html_ad3a6ab6a46639131770efd0149d04455"><div class="ttname"><a href="classgrpc_1_1_server_async_writer.html#ad3a6ab6a46639131770efd0149d04455">grpc::ServerAsyncWriter::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:677</div></div>
+<div class="ttc" id="classgrpc_1_1_reader_interface_html"><div class="ttname"><a href="classgrpc_1_1_reader_interface.html">grpc::ReaderInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:63</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_html_ad2cc630d207d246a851daa339bda479b"><div class="ttname"><a href="classgrpc_1_1_server_reader.html#ad2cc630d207d246a851daa339bda479b">grpc::ServerReader::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata()</div><div class="ttdef"><b>Definition:</b> stream.h:289</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_interface_html_a878193880df68ab969b697f1fcd7dbc3"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer_interface.html#a878193880df68ab969b697f1fcd7dbc3">grpc::ClientAsyncReaderWriterInterface::WritesDone</a></div><div class="ttdeci">virtual void WritesDone(void *tag)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_recv_status_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_recv_status.html">grpc::CallOpClientRecvStatus</a></div><div class="ttdef"><b>Definition:</b> call.h:431</div></div>
+<div class="ttc" id="classgrpc_1_1_async_writer_interface_html_a40c1091ac5cb5243c874da725ae291b4"><div class="ttname"><a href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4">grpc::AsyncWriterInterface::Write</a></div><div class="ttdeci">virtual void Write(const W &amp;msg, void *tag)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_reader_interface_html_a1fbd3d6e86e2f97e5444f29b0af0a9d5"><div class="ttname"><a href="classgrpc_1_1_reader_interface.html#a1fbd3d6e86e2f97e5444f29b0af0a9d5">grpc::ReaderInterface::~ReaderInterface</a></div><div class="ttdeci">virtual ~ReaderInterface()</div><div class="ttdef"><b>Definition:</b> stream.h:65</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_writer_html_a7027a65f3d84ff275b130cf9a0f170f5"><div class="ttname"><a href="classgrpc_1_1_server_async_writer.html#a7027a65f3d84ff275b130cf9a0f170f5">grpc::ServerAsyncWriter::Write</a></div><div class="ttdeci">void Write(const W &amp;msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:686</div></div>
+<div class="ttc" id="channel__interface_8h_html"><div class="ttname"><a href="channel__interface_8h.html">channel_interface.h</a></div></div>
+<div class="ttc" id="config_8h_html_ab2216aa6e0ffe505e1ec362a9621a7f9"><div class="ttname"><a href="config_8h.html#ab2216aa6e0ffe505e1ec362a9621a7f9">GRPC_FINAL</a></div><div class="ttdeci">#define GRPC_FINAL</div><div class="ttdef"><b>Definition:</b> config.h:71</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html_ac3cb288c3bd9d1b826fd726bd2655be3"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html#ac3cb288c3bd9d1b826fd726bd2655be3">grpc::ClientAsyncReaderWriter::Write</a></div><div class="ttdeci">void Write(const W &amp;msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:576</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_html_ac60c1f8d5373644f952377096f1a5b2f"><div class="ttname"><a href="classgrpc_1_1_server_async_reader.html#ac60c1f8d5373644f952377096f1a5b2f">grpc::ServerAsyncReader::Read</a></div><div class="ttdeci">void Read(R *msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:625</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_writer_html_ab40293c8bda8123b5c0e7a0455860533"><div class="ttname"><a href="classgrpc_1_1_server_async_reader_writer.html#ab40293c8bda8123b5c0e7a0455860533">grpc::ServerAsyncReaderWriter::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:726</div></div>
+<div class="ttc" id="classgrpc_1_1_server_writer_html_a995e4cbb3661bfdb2cf51ec2b5975a1a"><div class="ttname"><a href="classgrpc_1_1_server_writer.html#a995e4cbb3661bfdb2cf51ec2b5975a1a">grpc::ServerWriter::Write</a></div><div class="ttdeci">bool Write(const W &amp;msg, const WriteOptions &amp;options) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:327</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_html_abb69eb7672e42eb09fbc4d7110d142df"><div class="ttname"><a href="classgrpc_1_1_client_reader.html#abb69eb7672e42eb09fbc4d7110d142df">grpc::ClientReader::Finish</a></div><div class="ttdeci">Status Finish() GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:137</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_interface_html_a488d42d85f8e34902401e013572ff822"><div class="ttname"><a href="classgrpc_1_1_client_async_writer_interface.html#a488d42d85f8e34902401e013572ff822">grpc::ClientAsyncWriterInterface::WritesDone</a></div><div class="ttdeci">virtual void WritesDone(void *tag)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_client_context_html"><div class="ttname"><a href="classgrpc_1_1_client_context.html">grpc::ClientContext</a></div><div class="ttdef"><b>Definition:</b> client_context.h:74</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html_aabd46ba35f39419bbcfeff8c0843c116"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html#aabd46ba35f39419bbcfeff8c0843c116">grpc::ClientReaderWriter::Finish</a></div><div class="ttdeci">Status Finish() GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:269</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_html_a4407f30ef2dbce2b650824536a6f76fb"><div class="ttname"><a href="classgrpc_1_1_server_async_reader.html#a4407f30ef2dbce2b650824536a6f76fb">grpc::ServerAsyncReader::FinishWithError</a></div><div class="ttdeci">void FinishWithError(const Status &amp;status, void *tag)</div><div class="ttdef"><b>Definition:</b> stream.h:648</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_html_ad4903b1736b423c076bac8e23db345f6"><div class="ttname"><a href="classgrpc_1_1_client_async_writer.html#ad4903b1736b423c076bac8e23db345f6">grpc::ClientAsyncWriter::ClientAsyncWriter</a></div><div class="ttdeci">ClientAsyncWriter(ChannelInterface *channel, CompletionQueue *cq, const RpcMethod &amp;method, ClientContext *context, R *response, void *tag)</div><div class="ttdef"><b>Definition:</b> stream.h:485</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_writer_html_ad0d2750db5e195d053e3361e1ff0df35"><div class="ttname"><a href="classgrpc_1_1_server_async_reader_writer.html#ad0d2750db5e195d053e3361e1ff0df35">grpc::ServerAsyncReaderWriter::Write</a></div><div class="ttdeci">void Write(const W &amp;msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:741</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_message.html">grpc::CallOpSendMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:190</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_html_a43e6b5258cfc623fa719884fce957521"><div class="ttname"><a href="classgrpc_1_1_server_reader.html#a43e6b5258cfc623fa719884fce957521">grpc::ServerReader::ServerReader</a></div><div class="ttdeci">ServerReader(Call *call, ServerContext *ctx)</div><div class="ttdef"><b>Definition:</b> stream.h:287</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_html_abfb6738c132b9ebe49024dc1bf1e9352"><div class="ttname"><a href="classgrpc_1_1_client_writer.html#abfb6738c132b9ebe49024dc1bf1e9352">grpc::ClientWriter::WritesDone</a></div><div class="ttdeci">bool WritesDone() GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:185</div></div>
+<div class="ttc" id="classgrpc_1_1_async_reader_interface_html_ac7845d2df90fb380008aadb7f5f2f379"><div class="ttname"><a href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">grpc::AsyncReaderInterface::~AsyncReaderInterface</a></div><div class="ttdeci">virtual ~AsyncReaderInterface()</div><div class="ttdef"><b>Definition:</b> stream.h:403</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_html_a4c6b81e2d624886c7e86b9b774121e36"><div class="ttname"><a href="classgrpc_1_1_client_writer.html#a4c6b81e2d624886c7e86b9b774121e36">grpc::ClientWriter::Write</a></div><div class="ttdeci">bool Write(const W &amp;msg, const WriteOptions &amp;options) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:176</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html">grpc::CallOpClientSendClose</a></div><div class="ttdef"><b>Definition:</b> call.h:341</div></div>
+<div class="ttc" id="classgrpc_1_1_client_streaming_interface_html_a312c9454c0f950e1c75b5c802bcbb00e"><div class="ttname"><a href="classgrpc_1_1_client_streaming_interface.html#a312c9454c0f950e1c75b5c802bcbb00e">grpc::ClientStreamingInterface::~ClientStreamingInterface</a></div><div class="ttdeci">virtual ~ClientStreamingInterface()</div><div class="ttdef"><b>Definition:</b> stream.h:51</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_interface.html">grpc::ClientAsyncReaderInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:418</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_html_abf0d84e441443c364b29b206fd7d0c56"><div class="ttname"><a href="classgrpc_1_1_client_reader.html#abf0d84e441443c364b29b206fd7d0c56">grpc::ClientReader::ClientReader</a></div><div class="ttdeci">ClientReader(ChannelInterface *channel, const RpcMethod &amp;method, ClientContext *context, const W &amp;request)</div><div class="ttdef"><b>Definition:</b> stream.h:101</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_writer_html_a0398eca2f3cb613273a77c28bd55489d"><div class="ttname"><a href="classgrpc_1_1_server_reader_writer.html#a0398eca2f3cb613273a77c28bd55489d">grpc::ServerReaderWriter::Read</a></div><div class="ttdeci">bool Read(R *msg) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:362</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html_ae431aa00a64f2685b60ec853334e6637"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html#ae431aa00a64f2685b60ec853334e6637">grpc::ClientAsyncReaderWriter::WritesDone</a></div><div class="ttdeci">void WritesDone(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:583</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_html_afe847df1fec5c40f6650498c026eb658"><div class="ttname"><a href="classgrpc_1_1_client_writer.html#afe847df1fec5c40f6650498c026eb658">grpc::ClientWriter::Finish</a></div><div class="ttdeci">Status Finish() GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:193</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html"><div class="ttname"><a href="classgrpc_1_1_call.html">grpc::Call</a></div><div class="ttdef"><b>Definition:</b> call.h:565</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer_interface.html">grpc::ClientAsyncReaderWriterInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:539</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_html_a1305f6a3159b73866b4b66621f573ae7"><div class="ttname"><a href="classgrpc_1_1_client_reader.html#a1305f6a3159b73866b4b66621f573ae7">grpc::ClientReader::Read</a></div><div class="ttdeci">bool Read(R *msg) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:127</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_interface_html_aff19574252338e9ac1b5446e82ed8ac5"><div class="ttname"><a href="classgrpc_1_1_client_writer_interface.html#aff19574252338e9ac1b5446e82ed8ac5">grpc::ClientWriterInterface::WritesDone</a></div><div class="ttdeci">virtual bool WritesDone()=0</div></div>
+<div class="ttc" id="classgrpc_1_1_channel_interface_html"><div class="ttname"><a href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a></div><div class="ttdef"><b>Definition:</b> channel_interface.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_writer_html_aa841b99fddf9ce347b9c617058f179f2"><div class="ttname"><a href="classgrpc_1_1_server_async_writer.html#aa841b99fddf9ce347b9c617058f179f2">grpc::ServerAsyncWriter::ServerAsyncWriter</a></div><div class="ttdeci">ServerAsyncWriter(ServerContext *ctx)</div><div class="ttdef"><b>Definition:</b> stream.h:674</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html_a4316a3e8d1b4d148a695c8afa240ea23"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html#a4316a3e8d1b4d148a695c8afa240ea23">grpc::ClientAsyncReaderWriter::Finish</a></div><div class="ttdeci">void Finish(Status *status, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:589</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_html_a1db45c4f5817db4f770c08dab64916c7"><div class="ttname"><a href="classgrpc_1_1_client_async_writer.html#a1db45c4f5817db4f770c08dab64916c7">grpc::ClientAsyncWriter::ReadInitialMetadata</a></div><div class="ttdeci">void ReadInitialMetadata(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:496</div></div>
+<div class="ttc" id="classgrpc_1_1_async_writer_interface_html"><div class="ttname"><a href="classgrpc_1_1_async_writer_interface.html">grpc::AsyncWriterInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:410</div></div>
+<div class="ttc" id="call_8h_html"><div class="ttname"><a href="call_8h.html">call.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_async_writer.html">grpc::ClientAsyncWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:68</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_set_html"><div class="ttname"><a href="classgrpc_1_1_call_op_set.html">grpc::CallOpSet</a></div><div class="ttdoc">Primary implementaiton of CallOpSetInterface. </div><div class="ttdef"><b>Definition:</b> call.h:506</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_client_send_close_html_a43cd5b76bc82ccd2292e318bcc2a34cc"><div class="ttname"><a href="classgrpc_1_1_call_op_client_send_close.html#a43cd5b76bc82ccd2292e318bcc2a34cc">grpc::CallOpClientSendClose::ClientSendClose</a></div><div class="ttdeci">void ClientSendClose()</div><div class="ttdef"><b>Definition:</b> call.h:345</div></div>
+<div class="ttc" id="classgrpc_1_1_server_context_html"><div class="ttname"><a href="classgrpc_1_1_server_context.html">grpc::ServerContext</a></div><div class="ttdef"><b>Definition:</b> server_context.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_html_aaa77b67709c07ab60bc190bce5ee9a59"><div class="ttname"><a href="classgrpc_1_1_server_async_reader.html#aaa77b67709c07ab60bc190bce5ee9a59">grpc::ServerAsyncReader::Finish</a></div><div class="ttdeci">void Finish(const W &amp;msg, const Status &amp;status, void *tag)</div><div class="ttdef"><b>Definition:</b> stream.h:631</div></div>
+<div class="ttc" id="classgrpc_1_1_write_options_html"><div class="ttname"><a href="classgrpc_1_1_write_options.html">grpc::WriteOptions</a></div><div class="ttdoc">Per-message write options. </div><div class="ttdef"><b>Definition:</b> call.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_interface_html_aee87dd6e3e8a40853207ceb53b590b19"><div class="ttname"><a href="classgrpc_1_1_client_reader_interface.html#aee87dd6e3e8a40853207ceb53b590b19">grpc::ClientReaderInterface::WaitForInitialMetadata</a></div><div class="ttdeci">virtual void WaitForInitialMetadata()=0</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_interface_html_a52f4e5d5ac7fe0e4995cb337aa0ecfc8"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer_interface.html#a52f4e5d5ac7fe0e4995cb337aa0ecfc8">grpc::ClientReaderWriterInterface::WritesDone</a></div><div class="ttdeci">virtual bool WritesDone()=0</div></div>
+<div class="ttc" id="classgrpc_1_1_writer_interface_html_a5ddbce2a74455afea61fc21e16b01c6a"><div class="ttname"><a href="classgrpc_1_1_writer_interface.html#a5ddbce2a74455afea61fc21e16b01c6a">grpc::WriterInterface::Write</a></div><div class="ttdeci">bool Write(const W &amp;msg)</div><div class="ttdef"><b>Definition:</b> stream.h:84</div></div>
+<div class="ttc" id="classgrpc_1_1_completion_queue_html"><div class="ttname"><a href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a></div><div class="ttdef"><b>Definition:</b> completion_queue.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_streaming_interface_html_a103c33e82dbf1715749886c4249f3f28"><div class="ttname"><a href="classgrpc_1_1_client_async_streaming_interface.html#a103c33e82dbf1715749886c4249f3f28">grpc::ClientAsyncStreamingInterface::~ClientAsyncStreamingInterface</a></div><div class="ttdeci">virtual ~ClientAsyncStreamingInterface()</div><div class="ttdef"><b>Definition:</b> stream.h:392</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html_ae0595a950e2917399bbcef7e70e06066"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html#ae0595a950e2917399bbcef7e70e06066">grpc::ClientAsyncReaderWriter::ClientAsyncReaderWriter</a></div><div class="ttdeci">ClientAsyncReaderWriter(ChannelInterface *channel, CompletionQueue *cq, const RpcMethod &amp;method, ClientContext *context, void *tag)</div><div class="ttdef"><b>Definition:</b> stream.h:550</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_html_ad37af0a7fc27fc90e168fdb90eb52d8b"><div class="ttname"><a href="classgrpc_1_1_client_async_writer.html#ad37af0a7fc27fc90e168fdb90eb52d8b">grpc::ClientAsyncWriter::Finish</a></div><div class="ttdeci">void Finish(Status *status, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:517</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_writer_html_afbb050c198cbbc7f91f9f7fb8bf8c004"><div class="ttname"><a href="classgrpc_1_1_server_async_writer.html#afbb050c198cbbc7f91f9f7fb8bf8c004">grpc::ServerAsyncWriter::Finish</a></div><div class="ttdeci">void Finish(const Status &amp;status, void *tag)</div><div class="ttdef"><b>Definition:</b> stream.h:697</div></div>
+<div class="ttc" id="status_8h_html"><div class="ttname"><a href="status_8h.html">status.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_streaming_interface_html_ad83bfe2febf4a6296b7d2646799b8174"><div class="ttname"><a href="classgrpc_1_1_client_async_streaming_interface.html#ad83bfe2febf4a6296b7d2646799b8174">grpc::ClientAsyncStreamingInterface::ReadInitialMetadata</a></div><div class="ttdeci">virtual void ReadInitialMetadata(void *tag)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_rpc_method_html"><div class="ttname"><a href="classgrpc_1_1_rpc_method.html">grpc::RpcMethod</a></div><div class="ttdef"><b>Definition:</b> rpc_method.h:39</div></div>
+<div class="ttc" id="classgrpc_1_1_client_streaming_interface_html_a98e2927a42c793017ce7d8c6e88539c4"><div class="ttname"><a href="classgrpc_1_1_client_streaming_interface.html#a98e2927a42c793017ce7d8c6e88539c4">grpc::ClientStreamingInterface::Finish</a></div><div class="ttdeci">virtual Status Finish()=0</div></div>
+<div class="ttc" id="client__context_8h_html"><div class="ttname"><a href="client__context_8h.html">client_context.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_writer_html_ab416079f6464c056c772f7a1ecb69467"><div class="ttname"><a href="classgrpc_1_1_server_reader_writer.html#ab416079f6464c056c772f7a1ecb69467">grpc::ServerReaderWriter::Write</a></div><div class="ttdeci">bool Write(const W &amp;msg, const WriteOptions &amp;options) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:370</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_html_a91bfabf65e2dc955b6983bc0ece5a73f"><div class="ttname"><a href="classgrpc_1_1_client_async_reader.html#a91bfabf65e2dc955b6983bc0ece5a73f">grpc::ClientAsyncReader::Finish</a></div><div class="ttdeci">void Finish(Status *status, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:455</div></div>
+<div class="ttc" id="classgrpc_1_1_call_html_a78ca141a1008fbbb122ee4de076edcc4"><div class="ttname"><a href="classgrpc_1_1_call.html#a78ca141a1008fbbb122ee4de076edcc4">grpc::Call::PerformOps</a></div><div class="ttdeci">void PerformOps(CallOpSetInterface *ops)</div></div>
+<div class="ttc" id="classgrpc_1_1_writer_interface_html"><div class="ttname"><a href="classgrpc_1_1_writer_interface.html">grpc::WriterInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:76</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html_a1f5b65c54d4e6dd502897e36040714dc"><div class="ttname"><a href="classgrpc_1_1_status.html#a1f5b65c54d4e6dd502897e36040714dc">grpc::Status::ok</a></div><div class="ttdeci">bool ok() const </div><div class="ttdef"><b>Definition:</b> status.h:55</div></div>
+<div class="ttc" id="service__type_8h_html"><div class="ttname"><a href="service__type_8h.html">service_type.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html_a787e8b30520c9b32ef877bf1d3298dcc"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html#a787e8b30520c9b32ef877bf1d3298dcc">grpc::ClientReaderWriter::ClientReaderWriter</a></div><div class="ttdeci">ClientReaderWriter(ChannelInterface *channel, const RpcMethod &amp;method, ClientContext *context)</div><div class="ttdef"><b>Definition:</b> stream.h:222</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer_interface.html">grpc::ClientReaderWriterInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:210</div></div>
+<div class="ttc" id="classgrpc_1_1_status_html"><div class="ttname"><a href="classgrpc_1_1_status.html">grpc::Status</a></div><div class="ttdef"><b>Definition:</b> status.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1_reader_interface_html_a04a1da8610d790ea86ecd5a14fe892b8"><div class="ttname"><a href="classgrpc_1_1_reader_interface.html#a04a1da8610d790ea86ecd5a14fe892b8">grpc::ReaderInterface::Read</a></div><div class="ttdeci">virtual bool Read(R *msg)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_client_streaming_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_streaming_interface.html">grpc::ClientStreamingInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:49</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_streaming_interface_html_afc1cfbd1514fea47088bc837bb578a24"><div class="ttname"><a href="classgrpc_1_1_client_async_streaming_interface.html#afc1cfbd1514fea47088bc837bb578a24">grpc::ClientAsyncStreamingInterface::Finish</a></div><div class="ttdeci">virtual void Finish(Status *status, void *tag)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_html_a5d05028563e789203225c0ba548710b6"><div class="ttname"><a href="classgrpc_1_1_server_async_reader.html#a5d05028563e789203225c0ba548710b6">grpc::ServerAsyncReader::SendInitialMetadata</a></div><div class="ttdeci">void SendInitialMetadata(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:616</div></div>
+<div class="ttc" id="classgrpc_1_1_server_writer_html_a119c720c14d6835a8bc40a4ed615f0f2"><div class="ttname"><a href="classgrpc_1_1_server_writer.html#a119c720c14d6835a8bc40a4ed615f0f2">grpc::ServerWriter::ServerWriter</a></div><div class="ttdeci">ServerWriter(Call *call, ServerContext *ctx)</div><div class="ttdef"><b>Definition:</b> stream.h:314</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_send_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_send_initial_metadata.html">grpc::CallOpSendInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:159</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html_af19ce81004b69300aa18d9ce14be29be"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html#af19ce81004b69300aa18d9ce14be29be">grpc::ClientReaderWriter::WaitForInitialMetadata</a></div><div class="ttdeci">void WaitForInitialMetadata()</div><div class="ttdef"><b>Definition:</b> stream.h:235</div></div>
+<div class="ttc" id="classgrpc_1_1_server_reader_html_a8bd737fbe8d5094fbcf40c45dc7723e0"><div class="ttname"><a href="classgrpc_1_1_server_reader.html#a8bd737fbe8d5094fbcf40c45dc7723e0">grpc::ServerReader::Read</a></div><div class="ttdeci">bool Read(R *msg) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:299</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_html_aaf9f76ba76be0a0144bbdf44d740731d"><div class="ttname"><a href="classgrpc_1_1_client_async_reader.html#aaf9f76ba76be0a0144bbdf44d740731d">grpc::ClientAsyncReader::Read</a></div><div class="ttdeci">void Read(R *msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:446</div></div>
+<div class="ttc" id="classgrpc_1_1_writer_interface_html_aa6b2aeb8957265b62bdc063b48f15d44"><div class="ttname"><a href="classgrpc_1_1_writer_interface.html#aa6b2aeb8957265b62bdc063b48f15d44">grpc::WriterInterface::Write</a></div><div class="ttdeci">virtual bool Write(const W &amp;msg, const WriteOptions &amp;options)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html_a8b6a32ede877fc2d5d4cfc5b95ac163f"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html#a8b6a32ede877fc2d5d4cfc5b95ac163f">grpc::ClientAsyncReaderWriter::Read</a></div><div class="ttdeci">void Read(R *msg, void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:567</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html">grpc::ClientReaderWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:64</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_writer_html_af2b106bee556273e61541950502237ef"><div class="ttname"><a href="classgrpc_1_1_server_async_reader_writer.html#af2b106bee556273e61541950502237ef">grpc::ServerAsyncReaderWriter::ServerAsyncReaderWriter</a></div><div class="ttdeci">ServerAsyncReaderWriter(ServerContext *ctx)</div><div class="ttdef"><b>Definition:</b> stream.h:723</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_html"><div class="ttname"><a href="classgrpc_1_1_client_async_reader.html">grpc::ClientAsyncReader</a></div><div class="ttdef"><b>Definition:</b> client_context.h:66</div></div>
+<div class="ttc" id="classgrpc_1_1_async_writer_interface_html_a94cc9e4ed13c8fe4a1d883d465477ddd"><div class="ttname"><a href="classgrpc_1_1_async_writer_interface.html#a94cc9e4ed13c8fe4a1d883d465477ddd">grpc::AsyncWriterInterface::~AsyncWriterInterface</a></div><div class="ttdeci">virtual ~AsyncWriterInterface()</div><div class="ttdef"><b>Definition:</b> stream.h:412</div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_writer_html_ae4daaf42b4077d171638e574a67418b5"><div class="ttname"><a href="classgrpc_1_1_server_async_reader_writer.html#ae4daaf42b4077d171638e574a67418b5">grpc::ServerAsyncReaderWriter::Finish</a></div><div class="ttdeci">void Finish(const Status &amp;status, void *tag)</div><div class="ttdef"><b>Definition:</b> stream.h:752</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_html_ad471c81c02db253508b9fd599beab93e"><div class="ttname"><a href="classgrpc_1_1_client_reader.html#ad471c81c02db253508b9fd599beab93e">grpc::ClientReader::WaitForInitialMetadata</a></div><div class="ttdeci">void WaitForInitialMetadata()</div><div class="ttdef"><b>Definition:</b> stream.h:118</div></div>
+<div class="ttc" id="config_8h_html_a9a884d706be26697c9c892365a3402a9"><div class="ttname"><a href="config_8h.html#a9a884d706be26697c9c892365a3402a9">GRPC_OVERRIDE</a></div><div class="ttdeci">#define GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> config.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_writer_html_a69f0115acf443d7820adefc7b2a6f162"><div class="ttname"><a href="classgrpc_1_1_client_async_reader_writer.html#a69f0115acf443d7820adefc7b2a6f162">grpc::ClientAsyncReaderWriter::ReadInitialMetadata</a></div><div class="ttdeci">void ReadInitialMetadata(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:559</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_html"><div class="ttname"><a href="classgrpc_1_1_client_writer.html">grpc::ClientWriter</a></div><div class="ttdef"><b>Definition:</b> client_context.h:62</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_recv_initial_metadata_html"><div class="ttname"><a href="classgrpc_1_1_call_op_recv_initial_metadata.html">grpc::CallOpRecvInitialMetadata</a></div><div class="ttdef"><b>Definition:</b> call.h:402</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_html_aa14e3bc04d9852009f8b3094ce0d3ed4"><div class="ttname"><a href="classgrpc_1_1_client_async_reader.html#aa14e3bc04d9852009f8b3094ce0d3ed4">grpc::ClientAsyncReader::ClientAsyncReader</a></div><div class="ttdeci">ClientAsyncReader(ChannelInterface *channel, CompletionQueue *cq, const RpcMethod &amp;method, ClientContext *context, const W &amp;request, void *tag)</div><div class="ttdef"><b>Definition:</b> stream.h:426</div></div>
+<div class="ttc" id="classgrpc_1_1_client_writer_html_aed7d44896e0630a13409803459bd3cbe"><div class="ttname"><a href="classgrpc_1_1_client_writer.html#aed7d44896e0630a13409803459bd3cbe">grpc::ClientWriter::ClientWriter</a></div><div class="ttdeci">ClientWriter(ChannelInterface *channel, const RpcMethod &amp;method, ClientContext *context, R *response)</div><div class="ttdef"><b>Definition:</b> stream.h:164</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html_a5e579c3ff2854b7776fe125a0a0cf762"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html#a5e579c3ff2854b7776fe125a0a0cf762">grpc::ClientReaderWriter::Write</a></div><div class="ttdeci">bool Write(const W &amp;msg, const WriteOptions &amp;options) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:255</div></div>
+<div class="ttc" id="classgrpc_1_1_async_reader_interface_html_aa644cf63c12ae8c9d5fda16a361f8a11"><div class="ttname"><a href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">grpc::AsyncReaderInterface::Read</a></div><div class="ttdeci">virtual void Read(R *msg, void *tag)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_writer_interface_html_a447d71736fb6e8c6bd21287ecc3a9f75"><div class="ttname"><a href="classgrpc_1_1_writer_interface.html#a447d71736fb6e8c6bd21287ecc3a9f75">grpc::WriterInterface::~WriterInterface</a></div><div class="ttdeci">virtual ~WriterInterface()</div><div class="ttdef"><b>Definition:</b> stream.h:78</div></div>
+<div class="ttc" id="classgrpc_1_1_call_op_generic_recv_message_html"><div class="ttname"><a href="classgrpc_1_1_call_op_generic_recv_message.html">grpc::CallOpGenericRecvMessage</a></div><div class="ttdef"><b>Definition:</b> call.h:298</div></div>
+<div class="ttc" id="server__context_8h_html"><div class="ttname"><a href="server__context_8h.html">server_context.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_server_async_reader_html_a7f351e1d526b250336402ee03b8cc75e"><div class="ttname"><a href="classgrpc_1_1_server_async_reader.html#a7f351e1d526b250336402ee03b8cc75e">grpc::ServerAsyncReader::ServerAsyncReader</a></div><div class="ttdeci">ServerAsyncReader(ServerContext *ctx)</div><div class="ttdef"><b>Definition:</b> stream.h:613</div></div>
+<div class="ttc" id="classgrpc_1_1_async_reader_interface_html"><div class="ttname"><a href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:401</div></div>
+<div class="ttc" id="classgrpc_1_1_client_reader_writer_html_a5ed775777711d64b848f31260aef2898"><div class="ttname"><a href="classgrpc_1_1_client_reader_writer.html#a5ed775777711d64b848f31260aef2898">grpc::ClientReaderWriter::WritesDone</a></div><div class="ttdeci">bool WritesDone() GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:262</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_reader_html_a0e5b71e2620dc95fe41305eef7ee7863"><div class="ttname"><a href="classgrpc_1_1_client_async_reader.html#a0e5b71e2620dc95fe41305eef7ee7863">grpc::ClientAsyncReader::ReadInitialMetadata</a></div><div class="ttdeci">void ReadInitialMetadata(void *tag) GRPC_OVERRIDE</div><div class="ttdef"><b>Definition:</b> stream.h:438</div></div>
+<div class="ttc" id="classgrpc_1_1_client_async_writer_interface_html"><div class="ttname"><a href="classgrpc_1_1_client_async_writer_interface.html">grpc::ClientAsyncWriterInterface</a></div><div class="ttdef"><b>Definition:</b> stream.h:475</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/structgrpc_1_1_method_handler_1_1_handler_parameter.html b/doc/ref/c++/html/structgrpc_1_1_method_handler_1_1_handler_parameter.html
new file mode 100644
index 0000000000..03e99e756d
--- /dev/null
+++ b/doc/ref/c++/html/structgrpc_1_1_method_handler_1_1_handler_parameter.html
@@ -0,0 +1,223 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::MethodHandler::HandlerParameter Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_method_handler.html">MethodHandler</a></li><li class="navelem"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html">HandlerParameter</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::MethodHandler::HandlerParameter Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a339310bf784411fd5e7d7b9118704693"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a339310bf784411fd5e7d7b9118704693">HandlerParameter</a> (<a class="el" href="classgrpc_1_1_call.html">Call</a> *c, <a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *context, grpc_byte_buffer *req, int max_size)</td></tr>
+<tr class="separator:a339310bf784411fd5e7d7b9118704693"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:aebd5b34a7b5bc6e04ef5ab5df42e7e72"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_call.html">Call</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#aebd5b34a7b5bc6e04ef5ab5df42e7e72">call</a></td></tr>
+<tr class="separator:aebd5b34a7b5bc6e04ef5ab5df42e7e72"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a281166394b3ec1fc0962f3841ef22c3c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a281166394b3ec1fc0962f3841ef22c3c">server_context</a></td></tr>
+<tr class="separator:a281166394b3ec1fc0962f3841ef22c3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a82558a5f8a8d3c9b16be620092f67fa4"><td class="memItemLeft" align="right" valign="top">grpc_byte_buffer *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#a82558a5f8a8d3c9b16be620092f67fa4">request</a></td></tr>
+<tr class="separator:a82558a5f8a8d3c9b16be620092f67fa4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae079bb60a6b69f4e7bca79a11cfa0756"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_method_handler_1_1_handler_parameter.html#ae079bb60a6b69f4e7bca79a11cfa0756">max_message_size</a></td></tr>
+<tr class="separator:ae079bb60a6b69f4e7bca79a11cfa0756"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="a339310bf784411fd5e7d7b9118704693"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::MethodHandler::HandlerParameter::HandlerParameter </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_call.html">Call</a> *&#160;</td>
+ <td class="paramname"><em>c</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a> *&#160;</td>
+ <td class="paramname"><em>context</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">grpc_byte_buffer *&#160;</td>
+ <td class="paramname"><em>req</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">int&#160;</td>
+ <td class="paramname"><em>max_size</em>&#160;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aebd5b34a7b5bc6e04ef5ab5df42e7e72"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_call.html">Call</a>* grpc::MethodHandler::HandlerParameter::call</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ae079bb60a6b69f4e7bca79a11cfa0756"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">int grpc::MethodHandler::HandlerParameter::max_message_size</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a82558a5f8a8d3c9b16be620092f67fa4"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc_byte_buffer* grpc::MethodHandler::HandlerParameter::request</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a281166394b3ec1fc0962f3841ef22c3c"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classgrpc_1_1_server_context.html">ServerContext</a>* grpc::MethodHandler::HandlerParameter::server_context</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>include/grpc++/impl/<a class="el" href="rpc__service__method_8h_source.html">rpc_service_method.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/structgrpc_1_1_ssl_credentials_options.html b/doc/ref/c++/html/structgrpc_1_1_ssl_credentials_options.html
new file mode 100644
index 0000000000..aa6d90144d
--- /dev/null
+++ b/doc/ref/c++/html/structgrpc_1_1_ssl_credentials_options.html
@@ -0,0 +1,156 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SslCredentialsOptions Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="structgrpc_1_1_ssl_credentials_options.html">SslCredentialsOptions</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::SslCredentialsOptions Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="credentials_8h_source.html">credentials.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:a0ce1730020e18d04b6af48c88e069869"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a0ce1730020e18d04b6af48c88e069869">pem_root_certs</a></td></tr>
+<tr class="separator:a0ce1730020e18d04b6af48c88e069869"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5b661f8daf02db7283774e0fb9a8979e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a5b661f8daf02db7283774e0fb9a8979e">pem_private_key</a></td></tr>
+<tr class="separator:a5b661f8daf02db7283774e0fb9a8979e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a01015d8ec7dbf49f2ac3cd21f21d383b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_credentials_options.html#a01015d8ec7dbf49f2ac3cd21f21d383b">pem_cert_chain</a></td></tr>
+<tr class="separator:a01015d8ec7dbf49f2ac3cd21f21d383b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="a01015d8ec7dbf49f2ac3cd21f21d383b"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::SslCredentialsOptions::pem_cert_chain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a5b661f8daf02db7283774e0fb9a8979e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::SslCredentialsOptions::pem_private_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a0ce1730020e18d04b6af48c88e069869"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::SslCredentialsOptions::pem_root_certs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="credentials_8h_source.html">credentials.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options.html b/doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options.html
new file mode 100644
index 0000000000..985761eb8b
--- /dev/null
+++ b/doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options.html
@@ -0,0 +1,192 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SslServerCredentialsOptions Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html">SslServerCredentialsOptions</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::SslServerCredentialsOptions Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__credentials_8h_source.html">server_credentials.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">PemKeyCertPair</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:ae85661f17b0dd9f4fc27275203e5f105"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#ae85661f17b0dd9f4fc27275203e5f105">SslServerCredentialsOptions</a> ()</td></tr>
+<tr class="separator:ae85661f17b0dd9f4fc27275203e5f105"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:acdde73dba83ee30aeda4a678f5ce8e74"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#acdde73dba83ee30aeda4a678f5ce8e74">pem_root_certs</a></td></tr>
+<tr class="separator:acdde73dba83ee30aeda4a678f5ce8e74"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3a042e846edd3d1e2f24e846e36c694d"><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">PemKeyCertPair</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#a3a042e846edd3d1e2f24e846e36c694d">pem_key_cert_pairs</a></td></tr>
+<tr class="separator:a3a042e846edd3d1e2f24e846e36c694d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa563c0e5a34e389dbc2f4dfa3c097e3e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html#aa563c0e5a34e389dbc2f4dfa3c097e3e">force_client_auth</a></td></tr>
+<tr class="separator:aa563c0e5a34e389dbc2f4dfa3c097e3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" id="ae85661f17b0dd9f4fc27275203e5f105"></a>
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+ <tr>
+ <td class="mlabels-left">
+ <table class="memname">
+ <tr>
+ <td class="memname">grpc::SslServerCredentialsOptions::SslServerCredentialsOptions </td>
+ <td>(</td>
+ <td class="paramname"></td><td>)</td>
+ <td></td>
+ </tr>
+ </table>
+ </td>
+ <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span> </td>
+ </tr>
+</table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="aa563c0e5a34e389dbc2f4dfa3c097e3e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">bool grpc::SslServerCredentialsOptions::force_client_auth</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="a3a042e846edd3d1e2f24e846e36c694d"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">std::vector&lt;<a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">PemKeyCertPair</a>&gt; grpc::SslServerCredentialsOptions::pem_key_cert_pairs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="acdde73dba83ee30aeda4a678f5ce8e74"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::SslServerCredentialsOptions::pem_root_certs</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="server__credentials_8h_source.html">server_credentials.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html b/doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html
new file mode 100644
index 0000000000..a5a88b969a
--- /dev/null
+++ b/doc/ref/c++/html/structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html
@@ -0,0 +1,142 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: grpc::SslServerCredentialsOptions::PemKeyCertPair Struct Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
+ <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
+ <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options.html">SslServerCredentialsOptions</a></li><li class="navelem"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html">PemKeyCertPair</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#pub-attribs">Data Fields</a> </div>
+ <div class="headertitle">
+<div class="title">grpc::SslServerCredentialsOptions::PemKeyCertPair Struct Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+
+<p><code>#include &lt;<a class="el" href="server__credentials_8h_source.html">server_credentials.h</a>&gt;</code></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
+Data Fields</h2></td></tr>
+<tr class="memitem:ad9fa2a2083a40127d264e61cca637050"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad9fa2a2083a40127d264e61cca637050">private_key</a></td></tr>
+<tr class="separator:ad9fa2a2083a40127d264e61cca637050"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad58d2824d15cc6a1d646b8bef0b8352e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc_1_1_ssl_server_credentials_options_1_1_pem_key_cert_pair.html#ad58d2824d15cc6a1d646b8bef0b8352e">cert_chain</a></td></tr>
+<tr class="separator:ad58d2824d15cc6a1d646b8bef0b8352e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<h2 class="groupheader">Field Documentation</h2>
+<a class="anchor" id="ad58d2824d15cc6a1d646b8bef0b8352e"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::SslServerCredentialsOptions::PemKeyCertPair::cert_chain</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<a class="anchor" id="ad9fa2a2083a40127d264e61cca637050"></a>
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="namespacegrpc.html#ab04a87625da3bf85cdaf5e7856b00203">grpc::string</a> grpc::SslServerCredentialsOptions::PemKeyCertPair::private_key</td>
+ </tr>
+ </table>
+</div><div class="memdoc">
+
+</div>
+</div>
+<hr/>The documentation for this struct was generated from the following file:<ul>
+<li>include/grpc++/<a class="el" href="server__credentials_8h_source.html">server_credentials.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/sync_8h.html b/doc/ref/c++/html/sync_8h.html
new file mode 100644
index 0000000000..a0099ef8d9
--- /dev/null
+++ b/doc/ref/c++/html/sync_8h.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/sync.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="sync__cxx11_8h_source.html">grpc++/impl/sync_cxx11.h</a>&gt;</code><br/>
+</div>
+<p><a href="sync_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/sync_8h_source.html b/doc/ref/c++/html/sync_8h_source.html
new file mode 100644
index 0000000000..bd2546d6a4
--- /dev/null
+++ b/doc/ref/c++/html/sync_8h_source.html
@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/sync.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sync_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_SYNC_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_SYNC_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef GRPC_CXX0X_NO_THREAD</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="sync__no__cxx11_8h.html">grpc++/impl/sync_no_cxx11.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="sync__cxx11_8h.html">grpc++/impl/sync_cxx11.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_SYNC_H</span></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="sync__cxx11_8h_html"><div class="ttname"><a href="sync__cxx11_8h.html">sync_cxx11.h</a></div></div>
+<div class="ttc" id="sync__no__cxx11_8h_html"><div class="ttname"><a href="sync__no__cxx11_8h.html">sync_no_cxx11.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/sync__cxx11_8h.html b/doc/ref/c++/html/sync__cxx11_8h.html
new file mode 100644
index 0000000000..421b95bb8c
--- /dev/null
+++ b/doc/ref/c++/html/sync__cxx11_8h.html
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/sync_cxx11.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">sync_cxx11.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;condition_variable&gt;</code><br/>
+<code>#include &lt;mutex&gt;</code><br/>
+</div>
+<p><a href="sync__cxx11_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/sync__cxx11_8h_source.html b/doc/ref/c++/html/sync__cxx11_8h_source.html
new file mode 100644
index 0000000000..1b96369fab
--- /dev/null
+++ b/doc/ref/c++/html/sync__cxx11_8h_source.html
@@ -0,0 +1,149 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/sync_cxx11.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync_cxx11.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sync__cxx11_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_SYNC_CXX11_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_SYNC_CXX11_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;condition_variable&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;mutex&gt;</span></div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">using</span> std::condition_variable;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">using</span> std::mutex;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="keyword">using</span> std::lock_guard;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="keyword">using</span> std::unique_lock;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_SYNC_CXX11_H</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/sync__no__cxx11_8h.html b/doc/ref/c++/html/sync__no__cxx11_8h.html
new file mode 100644
index 0000000000..24ca43e89d
--- /dev/null
+++ b/doc/ref/c++/html/sync__no__cxx11_8h.html
@@ -0,0 +1,125 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/sync_no_cxx11.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">sync_no_cxx11.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;grpc/support/sync.h&gt;</code><br/>
+</div>
+<p><a href="sync__no__cxx11_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard&lt; mutex &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1mutex.html">grpc::mutex</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1lock__guard.html">grpc::lock_guard&lt; mutex &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1unique__lock.html">grpc::unique_lock&lt; mutex &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/sync__no__cxx11_8h_source.html b/doc/ref/c++/html/sync__no__cxx11_8h_source.html
new file mode 100644
index 0000000000..e510bf5ff4
--- /dev/null
+++ b/doc/ref/c++/html/sync__no__cxx11_8h_source.html
@@ -0,0 +1,219 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/sync_no_cxx11.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">sync_no_cxx11.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="sync__no__cxx11_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_SYNC_NO_CXX11_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_SYNC_NO_CXX11_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;grpc/support/sync.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">class</span> mutex&gt;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classgrpc_1_1lock__guard.html"> 42</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1lock__guard.html">lock_guard</a>;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1condition__variable.html">condition_variable</a>;</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="classgrpc_1_1mutex.html"> 45</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1mutex.html">mutex</a> {</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581"> 47</a></span>&#160; <a class="code" href="classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581">mutex</a>() { gpr_mu_init(&amp;mu_); }</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a"> 48</a></span>&#160; <a class="code" href="classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a">~mutex</a>() { gpr_mu_destroy(&amp;mu_); }</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; ::gpr_mu mu_;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">class</span> mutex&gt;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classgrpc_1_1mutex.html#a4cfa68eb2ccf47f11c725b6773ff9a5b"> 52</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1lock__guard.html">lock_guard</a>;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1mutex.html#a89c9b6aa2256fa5efd92a333d96381d4"> 53</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1condition__variable.html">condition_variable</a>;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;};</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> mutex&gt;</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1lock__guard.html">lock_guard</a> {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264"> 59</a></span>&#160; <a class="code" href="classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264">lock_guard</a>(<a class="code" href="classgrpc_1_1mutex.html">mutex</a> &amp;mu) : mu_(mu), locked(true) { gpr_mu_lock(&amp;mu.mu_); }</div>
+<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2"> 60</a></span>&#160; <a class="code" href="classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2">~lock_guard</a>() { <a class="code" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">unlock_internal</a>(); }</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">protected</span>:</div>
+<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649"> 62</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649">lock_internal</a>() {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <span class="keywordflow">if</span> (!locked) gpr_mu_lock(&amp;mu_.mu_);</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; locked = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5"> 66</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">unlock_internal</a>() {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">if</span> (locked) gpr_mu_unlock(&amp;mu_.mu_);</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; locked = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; }</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="classgrpc_1_1mutex.html">mutex</a> &amp;mu_;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordtype">bool</span> locked;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="classgrpc_1_1lock__guard.html#a89c9b6aa2256fa5efd92a333d96381d4"> 73</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classgrpc_1_1condition__variable.html">condition_variable</a>;</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;};</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">class</span> mutex&gt;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="classgrpc_1_1unique__lock.html"> 77</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1unique__lock.html">unique_lock</a> : <span class="keyword">public</span> <a class="code" href="classgrpc_1_1lock__guard.html">lock_guard</a>&lt;mutex&gt; {</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633"> 79</a></span>&#160; <a class="code" href="classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633">unique_lock</a>(<a class="code" href="classgrpc_1_1mutex.html">mutex</a> &amp;mu) : <a class="code" href="classgrpc_1_1lock__guard.html">lock_guard</a>&lt;<a class="code" href="classgrpc_1_1mutex.html">mutex</a>&gt;(mu) { }</div>
+<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54"> 80</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54">lock</a>() { this-&gt;<a class="code" href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649">lock_internal</a>(); }</div>
+<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd"> 81</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd">unlock</a>() { this-&gt;<a class="code" href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">unlock_internal</a>(); }</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;};</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classgrpc_1_1condition__variable.html"> 84</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1condition__variable.html">condition_variable</a> {</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611"> 86</a></span>&#160; <a class="code" href="classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611">condition_variable</a>() { gpr_cv_init(&amp;cv_); }</div>
+<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca"> 87</a></span>&#160; <a class="code" href="classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca">~condition_variable</a>() { gpr_cv_destroy(&amp;cv_); }</div>
+<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8"> 88</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8">wait</a>(<a class="code" href="classgrpc_1_1lock__guard.html">lock_guard&lt;mutex&gt;</a> &amp;mu) {</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; mu.locked = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; gpr_cv_wait(&amp;cv_, &amp;mu.mu_.mu_, gpr_inf_future(GPR_CLOCK_REALTIME));</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; mu.locked = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
+<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3"> 93</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3">notify_one</a>() { gpr_cv_signal(&amp;cv_); }</div>
+<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36"> 94</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36">notify_all</a>() { gpr_cv_broadcast(&amp;cv_); }</div>
+<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; gpr_cv cv_;</div>
+<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;};</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_SYNC_NO_CXX11_H</span></div>
+<div class="ttc" id="classgrpc_1_1mutex_html"><div class="ttname"><a href="classgrpc_1_1mutex.html">grpc::mutex</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:45</div></div>
+<div class="ttc" id="classgrpc_1_1lock__guard_html_a84bc9261c3b0c0bb3824265c31ce26c5"><div class="ttname"><a href="classgrpc_1_1lock__guard.html#a84bc9261c3b0c0bb3824265c31ce26c5">grpc::lock_guard::unlock_internal</a></div><div class="ttdeci">void unlock_internal()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:66</div></div>
+<div class="ttc" id="classgrpc_1_1lock__guard_html_ac6236e52082bd62d20f17de1625fd649"><div class="ttname"><a href="classgrpc_1_1lock__guard.html#ac6236e52082bd62d20f17de1625fd649">grpc::lock_guard::lock_internal</a></div><div class="ttdeci">void lock_internal()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:62</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html"><div class="ttname"><a href="classgrpc_1_1condition__variable.html">grpc::condition_variable</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:84</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html_ab96cbd3448680ce017794565847181ca"><div class="ttname"><a href="classgrpc_1_1condition__variable.html#ab96cbd3448680ce017794565847181ca">grpc::condition_variable::~condition_variable</a></div><div class="ttdeci">~condition_variable()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:87</div></div>
+<div class="ttc" id="classgrpc_1_1lock__guard_html_ac99f7ed1e7b1e177a20b23f230eaf1c2"><div class="ttname"><a href="classgrpc_1_1lock__guard.html#ac99f7ed1e7b1e177a20b23f230eaf1c2">grpc::lock_guard::~lock_guard</a></div><div class="ttdeci">~lock_guard()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:60</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html_a09a9b8a854f939962c6080bd2764dd36"><div class="ttname"><a href="classgrpc_1_1condition__variable.html#a09a9b8a854f939962c6080bd2764dd36">grpc::condition_variable::notify_all</a></div><div class="ttdeci">void notify_all()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:94</div></div>
+<div class="ttc" id="classgrpc_1_1mutex_html_ae012e9f1c5cafd9d6f77a9a81d641581"><div class="ttname"><a href="classgrpc_1_1mutex.html#ae012e9f1c5cafd9d6f77a9a81d641581">grpc::mutex::mutex</a></div><div class="ttdeci">mutex()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:47</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html_abc49965bc36f319781bb315fff7d9fb3"><div class="ttname"><a href="classgrpc_1_1condition__variable.html#abc49965bc36f319781bb315fff7d9fb3">grpc::condition_variable::notify_one</a></div><div class="ttdeci">void notify_one()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:93</div></div>
+<div class="ttc" id="classgrpc_1_1unique__lock_html_af631f112239d5fb5aeff2ed1335e7ccd"><div class="ttname"><a href="classgrpc_1_1unique__lock.html#af631f112239d5fb5aeff2ed1335e7ccd">grpc::unique_lock::unlock</a></div><div class="ttdeci">void unlock()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:81</div></div>
+<div class="ttc" id="classgrpc_1_1lock__guard_html_ad5556ef1ebffe0cf983871fbc61fe264"><div class="ttname"><a href="classgrpc_1_1lock__guard.html#ad5556ef1ebffe0cf983871fbc61fe264">grpc::lock_guard::lock_guard</a></div><div class="ttdeci">lock_guard(mutex &amp;mu)</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:59</div></div>
+<div class="ttc" id="classgrpc_1_1unique__lock_html_ae29c07f1bdca4a39516f3841dac5cb54"><div class="ttname"><a href="classgrpc_1_1unique__lock.html#ae29c07f1bdca4a39516f3841dac5cb54">grpc::unique_lock::lock</a></div><div class="ttdeci">void lock()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:80</div></div>
+<div class="ttc" id="classgrpc_1_1mutex_html_a318a9bdff2281779aaea87344d6a3e5a"><div class="ttname"><a href="classgrpc_1_1mutex.html#a318a9bdff2281779aaea87344d6a3e5a">grpc::mutex::~mutex</a></div><div class="ttdeci">~mutex()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:48</div></div>
+<div class="ttc" id="classgrpc_1_1lock__guard_html"><div class="ttname"><a href="classgrpc_1_1lock__guard.html">grpc::lock_guard</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:42</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html_ac254c7b505f7b6e3c5c244f971aef611"><div class="ttname"><a href="classgrpc_1_1condition__variable.html#ac254c7b505f7b6e3c5c244f971aef611">grpc::condition_variable::condition_variable</a></div><div class="ttdeci">condition_variable()</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:86</div></div>
+<div class="ttc" id="classgrpc_1_1unique__lock_html"><div class="ttname"><a href="classgrpc_1_1unique__lock.html">grpc::unique_lock</a></div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:77</div></div>
+<div class="ttc" id="classgrpc_1_1unique__lock_html_ad82b43eea850ccccf7a1682668c3a633"><div class="ttname"><a href="classgrpc_1_1unique__lock.html#ad82b43eea850ccccf7a1682668c3a633">grpc::unique_lock::unique_lock</a></div><div class="ttdeci">unique_lock(mutex &amp;mu)</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:79</div></div>
+<div class="ttc" id="classgrpc_1_1condition__variable_html_a58cced6338389e99d7e663ba0ab5aed8"><div class="ttname"><a href="classgrpc_1_1condition__variable.html#a58cced6338389e99d7e663ba0ab5aed8">grpc::condition_variable::wait</a></div><div class="ttdeci">void wait(lock_guard&lt; mutex &gt; &amp;mu)</div><div class="ttdef"><b>Definition:</b> sync_no_cxx11.h:88</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/sync_off.png b/doc/ref/c++/html/sync_off.png
new file mode 100644
index 0000000000..3b443fc628
--- /dev/null
+++ b/doc/ref/c++/html/sync_off.png
Binary files differ
diff --git a/doc/ref/c++/html/sync_on.png b/doc/ref/c++/html/sync_on.png
new file mode 100644
index 0000000000..e08320fb64
--- /dev/null
+++ b/doc/ref/c++/html/sync_on.png
Binary files differ
diff --git a/doc/ref/c++/html/tab_a.png b/doc/ref/c++/html/tab_a.png
new file mode 100644
index 0000000000..3b725c41c5
--- /dev/null
+++ b/doc/ref/c++/html/tab_a.png
Binary files differ
diff --git a/doc/ref/c++/html/tab_b.png b/doc/ref/c++/html/tab_b.png
new file mode 100644
index 0000000000..e2b4a8638c
--- /dev/null
+++ b/doc/ref/c++/html/tab_b.png
Binary files differ
diff --git a/doc/ref/c++/html/tab_h.png b/doc/ref/c++/html/tab_h.png
new file mode 100644
index 0000000000..fd5cb70548
--- /dev/null
+++ b/doc/ref/c++/html/tab_h.png
Binary files differ
diff --git a/doc/ref/c++/html/tab_s.png b/doc/ref/c++/html/tab_s.png
new file mode 100644
index 0000000000..ab478c95b6
--- /dev/null
+++ b/doc/ref/c++/html/tab_s.png
Binary files differ
diff --git a/doc/ref/c++/html/tabs.css b/doc/ref/c++/html/tabs.css
new file mode 100644
index 0000000000..9cf578f23a
--- /dev/null
+++ b/doc/ref/c++/html/tabs.css
@@ -0,0 +1,60 @@
+.tabs, .tabs2, .tabs3 {
+ background-image: url('tab_b.png');
+ width: 100%;
+ z-index: 101;
+ font-size: 13px;
+ font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif;
+}
+
+.tabs2 {
+ font-size: 10px;
+}
+.tabs3 {
+ font-size: 9px;
+}
+
+.tablist {
+ margin: 0;
+ padding: 0;
+ display: table;
+}
+
+.tablist li {
+ float: left;
+ display: table-cell;
+ background-image: url('tab_b.png');
+ line-height: 36px;
+ list-style: none;
+}
+
+.tablist a {
+ display: block;
+ padding: 0 20px;
+ font-weight: bold;
+ background-image:url('tab_s.png');
+ background-repeat:no-repeat;
+ background-position:right;
+ color: #283A5D;
+ text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
+ text-decoration: none;
+ outline: none;
+}
+
+.tabs3 .tablist a {
+ padding: 0 10px;
+}
+
+.tablist a:hover {
+ background-image: url('tab_h.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+ text-decoration: none;
+}
+
+.tablist li.current a {
+ background-image: url('tab_a.png');
+ background-repeat:repeat-x;
+ color: #fff;
+ text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
+}
diff --git a/doc/ref/c++/html/thd_8h.html b/doc/ref/c++/html/thd_8h.html
new file mode 100644
index 0000000000..f91ed35630
--- /dev/null
+++ b/doc/ref/c++/html/thd_8h.html
@@ -0,0 +1,104 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/thd.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;<a class="el" href="thd__cxx11_8h_source.html">grpc++/impl/thd_cxx11.h</a>&gt;</code><br/>
+</div>
+<p><a href="thd_8h_source.html">Go to the source code of this file.</a></p>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/thd_8h_source.html b/doc/ref/c++/html/thd_8h_source.html
new file mode 100644
index 0000000000..6aee28de4a
--- /dev/null
+++ b/doc/ref/c++/html/thd_8h_source.html
@@ -0,0 +1,148 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/thd.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="thd_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_THD_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_THD_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#ifdef GRPC_CXX0X_NO_THREAD</span></div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="thd__no__cxx11_8h.html">grpc++/impl/thd_no_cxx11.h</a>&gt;</span></div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#else</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#include &lt;<a class="code" href="thd__cxx11_8h.html">grpc++/impl/thd_cxx11.h</a>&gt;</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#endif</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_THD_H</span></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="thd__cxx11_8h_html"><div class="ttname"><a href="thd__cxx11_8h.html">thd_cxx11.h</a></div></div>
+<div class="ttc" id="thd__no__cxx11_8h_html"><div class="ttname"><a href="thd__no__cxx11_8h.html">thd_no_cxx11.h</a></div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/thd__cxx11_8h.html b/doc/ref/c++/html/thd__cxx11_8h.html
new file mode 100644
index 0000000000..5328f876fa
--- /dev/null
+++ b/doc/ref/c++/html/thd__cxx11_8h.html
@@ -0,0 +1,111 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/thd_cxx11.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">thd_cxx11.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;thread&gt;</code><br/>
+</div>
+<p><a href="thd__cxx11_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/thd__cxx11_8h_source.html b/doc/ref/c++/html/thd__cxx11_8h_source.html
new file mode 100644
index 0000000000..34c03bf588
--- /dev/null
+++ b/doc/ref/c++/html/thd__cxx11_8h_source.html
@@ -0,0 +1,145 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/thd_cxx11.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd_cxx11.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="thd__cxx11_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_THD_CXX11_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_THD_CXX11_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;thread&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="keyword">using</span> std::thread;</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_THD_CXX11_H</span></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/thd__no__cxx11_8h.html b/doc/ref/c++/html/thd__no__cxx11_8h.html
new file mode 100644
index 0000000000..63c4ba7b56
--- /dev/null
+++ b/doc/ref/c++/html/thd__no__cxx11_8h.html
@@ -0,0 +1,117 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/thd_no_cxx11.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> </div>
+ <div class="headertitle">
+<div class="title">thd_no_cxx11.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;grpc/support/thd.h&gt;</code><br/>
+</div>
+<p><a href="thd__no__cxx11_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1thread.html">grpc::thread</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/thd__no__cxx11_8h_source.html b/doc/ref/c++/html/thd__no__cxx11_8h_source.html
new file mode 100644
index 0000000000..a14272e681
--- /dev/null
+++ b/doc/ref/c++/html/thd__no__cxx11_8h_source.html
@@ -0,0 +1,197 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/impl/thd_no_cxx11.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li><li class="navelem"><a class="el" href="dir_ac8b245a5921095c43c106649fd7bc4b.html">impl</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thd_no_cxx11.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="thd__no__cxx11_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_IMPL_THD_NO_CXX11_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_IMPL_THD_NO_CXX11_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;grpc/support/thd.h&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="classgrpc_1_1thread.html"> 41</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1thread.html">thread</a> {</div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269"> 43</a></span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt; <a class="code" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">thread</a>(<span class="keywordtype">void</span> (T::*fptr)(), T *obj) {</div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; func_ = <span class="keyword">new</span> thread_function&lt;T&gt;(fptr, obj);</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; joined_ = <span class="keyword">false</span>;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; start();</div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; }</div>
+<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f"> 48</a></span>&#160; <a class="code" href="classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f">~thread</a>() {</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">if</span> (!joined_) std::terminate();</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">delete</span> func_;</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; }</div>
+<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f"> 52</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f">join</a>() {</div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; gpr_thd_join(thd_);</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; joined_ = <span class="keyword">true</span>;</div>
+<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; }</div>
+<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordtype">void</span> start() {</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; gpr_thd_options options = gpr_thd_options_default();</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; gpr_thd_options_set_joinable(&amp;options);</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; gpr_thd_new(&amp;thd_, thread_func, (<span class="keywordtype">void</span> *) func_, &amp;options);</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; }</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> thread_func(<span class="keywordtype">void</span> *arg) {</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; thread_function_base *func = (thread_function_base *) arg;</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; func-&gt;call();</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; }</div>
+<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">class </span>thread_function_base {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">virtual</span> ~thread_function_base() { }</div>
+<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> call() = 0;</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; };</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">class </span>thread_function : <span class="keyword">public</span> thread_function_base {</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; thread_function(<span class="keywordtype">void</span> (T::*fptr)(), T *obj)</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; : fptr_(fptr)</div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; , obj_(obj) { }</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> call() { (obj_-&gt;*fptr_)(); }</div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; void (T::*fptr_)();</div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; T *obj_;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; };</div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; thread_function_base *func_;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; gpr_thd_id thd_;</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordtype">bool</span> joined_;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="comment">// Disallow copy and assign.</span></div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">thread</a>(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">thread</a>&amp;);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> <a class="code" href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">thread</a>&amp;);</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;};</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#endif // GRPCXX_IMPL_THD_NO_CXX11_H</span></div>
+<div class="ttc" id="classgrpc_1_1thread_html_a02b103e08092d24bf65e1a7b5b384269"><div class="ttname"><a href="classgrpc_1_1thread.html#a02b103e08092d24bf65e1a7b5b384269">grpc::thread::thread</a></div><div class="ttdeci">thread(void(T::*fptr)(), T *obj)</div><div class="ttdef"><b>Definition:</b> thd_no_cxx11.h:43</div></div>
+<div class="ttc" id="classgrpc_1_1thread_html_a2d1d3437f2ff58bb1eacb5417a85c29f"><div class="ttname"><a href="classgrpc_1_1thread.html#a2d1d3437f2ff58bb1eacb5417a85c29f">grpc::thread::join</a></div><div class="ttdeci">void join()</div><div class="ttdef"><b>Definition:</b> thd_no_cxx11.h:52</div></div>
+<div class="ttc" id="classgrpc_1_1thread_html"><div class="ttname"><a href="classgrpc_1_1thread.html">grpc::thread</a></div><div class="ttdef"><b>Definition:</b> thd_no_cxx11.h:41</div></div>
+<div class="ttc" id="classgrpc_1_1thread_html_a821416c0e9319e93ae8b8e5cdaa9f52f"><div class="ttname"><a href="classgrpc_1_1thread.html#a821416c0e9319e93ae8b8e5cdaa9f52f">grpc::thread::~thread</a></div><div class="ttdeci">~thread()</div><div class="ttdef"><b>Definition:</b> thd_no_cxx11.h:48</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/thread__pool__interface_8h.html b/doc/ref/c++/html/thread__pool__interface_8h.html
new file mode 100644
index 0000000000..307f5c7c1f
--- /dev/null
+++ b/doc/ref/c++/html/thread__pool__interface_8h.html
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/thread_pool_interface.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">thread_pool_interface.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;functional&gt;</code><br/>
+</div>
+<p><a href="thread__pool__interface_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:ac7e5a6b4adf7c63f444606454138a334"><td class="memItemLeft" align="right" valign="top">ThreadPoolInterface *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334">grpc::CreateDefaultThreadPool</a> ()</td></tr>
+<tr class="separator:ac7e5a6b4adf7c63f444606454138a334"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/thread__pool__interface_8h_source.html b/doc/ref/c++/html/thread__pool__interface_8h_source.html
new file mode 100644
index 0000000000..6e29bdf56e
--- /dev/null
+++ b/doc/ref/c++/html/thread__pool__interface_8h_source.html
@@ -0,0 +1,158 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/thread_pool_interface.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">thread_pool_interface.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="thread__pool__interface_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_THREAD_POOL_INTERFACE_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_THREAD_POOL_INTERFACE_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;functional&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">// A thread pool interface for running callbacks.</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="classgrpc_1_1_thread_pool_interface.html"> 42</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_thread_pool_interface.html">ThreadPoolInterface</a> {</div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538"> 44</a></span>&#160; <span class="keyword">virtual</span> <a class="code" href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538">~ThreadPoolInterface</a>() {}</div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="comment">// Schedule the given callback for execution.</span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce">Add</a>(<span class="keyword">const</span> std::function&lt;<span class="keywordtype">void</span>()&gt;&amp; callback) = 0;</div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;};</div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;ThreadPoolInterface* <a class="code" href="namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334">CreateDefaultThreadPool</a>();</div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#endif // GRPCXX_THREAD_POOL_INTERFACE_H</span></div>
+<div class="ttc" id="classgrpc_1_1_thread_pool_interface_html_aac6d805cc95ff8e0c8e366102cdd4dce"><div class="ttname"><a href="classgrpc_1_1_thread_pool_interface.html#aac6d805cc95ff8e0c8e366102cdd4dce">grpc::ThreadPoolInterface::Add</a></div><div class="ttdeci">virtual void Add(const std::function&lt; void()&gt; &amp;callback)=0</div></div>
+<div class="ttc" id="classgrpc_1_1_thread_pool_interface_html"><div class="ttname"><a href="classgrpc_1_1_thread_pool_interface.html">grpc::ThreadPoolInterface</a></div><div class="ttdef"><b>Definition:</b> thread_pool_interface.h:42</div></div>
+<div class="ttc" id="namespacegrpc_html_ac7e5a6b4adf7c63f444606454138a334"><div class="ttname"><a href="namespacegrpc.html#ac7e5a6b4adf7c63f444606454138a334">grpc::CreateDefaultThreadPool</a></div><div class="ttdeci">ThreadPoolInterface * CreateDefaultThreadPool()</div></div>
+<div class="ttc" id="classgrpc_1_1_thread_pool_interface_html_a74a3380787d9be6e261c2849cdc84538"><div class="ttname"><a href="classgrpc_1_1_thread_pool_interface.html#a74a3380787d9be6e261c2849cdc84538">grpc::ThreadPoolInterface::~ThreadPoolInterface</a></div><div class="ttdeci">virtual ~ThreadPoolInterface()</div><div class="ttdef"><b>Definition:</b> thread_pool_interface.h:44</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/time_8h.html b/doc/ref/c++/html/time_8h.html
new file mode 100644
index 0000000000..e55c9fbdfb
--- /dev/null
+++ b/doc/ref/c++/html/time_8h.html
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/time.h File Reference</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="summary">
+<a href="#nested-classes">Data Structures</a> &#124;
+<a href="#namespaces">Namespaces</a> &#124;
+<a href="#func-members">Functions</a> </div>
+ <div class="headertitle">
+<div class="title">time.h File Reference</div> </div>
+</div><!--header-->
+<div class="contents">
+<div class="textblock"><code>#include &lt;<a class="el" href="config_8h_source.html">grpc++/config.h</a>&gt;</code><br/>
+<code>#include &lt;chrono&gt;</code><br/>
+<code>#include &lt;grpc/support/time.h&gt;</code><br/>
+</div>
+<p><a href="time_8h_source.html">Go to the source code of this file.</a></p>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
+Data Structures</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point.html">grpc::TimePoint&lt; T &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html">grpc::TimePoint&lt; gpr_timespec &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
+Namespaces</h2></td></tr>
+<tr class="memitem:namespacegrpc"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html">grpc</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
+Functions</h2></td></tr>
+<tr class="memitem:a4e160d3739280d51ec130ab1bb1c549c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c">grpc::Timepoint2Timespec</a> (const std::chrono::system_clock::time_point &amp;from, gpr_timespec *to)</td></tr>
+<tr class="separator:a4e160d3739280d51ec130ab1bb1c549c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8b3b542af97e1ae35f327c7095d98369"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369">grpc::TimepointHR2Timespec</a> (const std::chrono::high_resolution_clock::time_point &amp;from, gpr_timespec *to)</td></tr>
+<tr class="separator:a8b3b542af97e1ae35f327c7095d98369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12896f279762d0100669da708d466ec1"><td class="memItemLeft" align="right" valign="top">std::chrono::system_clock::time_point&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">grpc::Timespec2Timepoint</a> (gpr_timespec t)</td></tr>
+<tr class="separator:a12896f279762d0100669da708d466ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>
diff --git a/doc/ref/c++/html/time_8h_source.html b/doc/ref/c++/html/time_8h_source.html
new file mode 100644
index 0000000000..f42eb5ad3c
--- /dev/null
+++ b/doc/ref/c++/html/time_8h_source.html
@@ -0,0 +1,221 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.6"/>
+<title>GRPC C++: include/grpc++/time.h Source File</title>
+<link href="tabs.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="jquery.js"></script>
+<script type="text/javascript" src="dynsections.js"></script>
+<link href="search/search.css" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" src="search/search.js"></script>
+<script type="text/javascript">
+ $(document).ready(function() { searchBox.OnSelectItem(0); });
+</script>
+<link href="doxygen.css" rel="stylesheet" type="text/css" />
+</head>
+<body>
+<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
+<div id="titlearea">
+<table cellspacing="0" cellpadding="0">
+ <tbody>
+ <tr style="height: 56px;">
+ <td style="padding-left: 0.5em;">
+ <div id="projectname">GRPC C++
+ &#160;<span id="projectnumber">0.10.0.0</span>
+ </div>
+ </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.6 -->
+<script type="text/javascript">
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+</script>
+ <div id="navrow1" class="tabs">
+ <ul class="tablist">
+ <li><a href="index.html"><span>Main&#160;Page</span></a></li>
+ <li><a href="namespaces.html"><span>Namespaces</span></a></li>
+ <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
+ <li class="current"><a href="files.html"><span>Files</span></a></li>
+ <li>
+ <div id="MSearchBox" class="MSearchBoxInactive">
+ <span class="left">
+ <img id="MSearchSelect" src="search/mag_sel.png"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ alt=""/>
+ <input type="text" id="MSearchField" value="Search" accesskey="S"
+ onfocus="searchBox.OnSearchFieldFocus(true)"
+ onblur="searchBox.OnSearchFieldFocus(false)"
+ onkeyup="searchBox.OnSearchFieldChange(event)"/>
+ </span><span class="right">
+ <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
+ </span>
+ </div>
+ </li>
+ </ul>
+ </div>
+ <div id="navrow2" class="tabs2">
+ <ul class="tablist">
+ <li><a href="files.html"><span>File&#160;List</span></a></li>
+ <li><a href="globals.html"><span>Globals</span></a></li>
+ </ul>
+ </div>
+<!-- window showing the filter options -->
+<div id="MSearchSelectWindow"
+ onmouseover="return searchBox.OnSearchSelectShow()"
+ onmouseout="return searchBox.OnSearchSelectHide()"
+ onkeydown="return searchBox.OnSearchSelectKey(event)">
+<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Macros</a></div>
+
+<!-- iframe showing the search results (closed by default) -->
+<div id="MSearchResultsWindow">
+<iframe src="javascript:void(0)" frameborder="0"
+ name="MSearchResults" id="MSearchResults">
+</iframe>
+</div>
+
+<div id="nav-path" class="navpath">
+ <ul>
+<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_f1b2ab2a88927c1e950e43c1cf4b634b.html">grpc++</a></li> </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+ <div class="headertitle">
+<div class="title">time.h</div> </div>
+</div><!--header-->
+<div class="contents">
+<a href="time_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div>
+<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015, Google Inc.</span></div>
+<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div>
+<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div>
+<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div>
+<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div>
+<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div>
+<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div>
+<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div>
+<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div>
+<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div>
+<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div>
+<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div>
+<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div>
+<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div>
+<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div>
+<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div>
+<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div>
+<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div>
+<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div>
+<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div>
+<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div>
+<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div>
+<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div>
+<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div>
+<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
+<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div>
+<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPCXX_TIME_H</span></div>
+<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define GRPCXX_TIME_H</span></div>
+<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="config_8h.html">grpc++/config.h</a>&gt;</span></div>
+<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div>
+<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
+<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="comment">/* If you are trying to use CompletionQueue::AsyncNext with a time class that</span></div>
+<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment"> isn&#39;t either gpr_timespec or std::chrono::system_clock::time_point, you</span></div>
+<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> will most likely be looking at this comment as your compiler will have</span></div>
+<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> fired an error below. In order to fix this issue, you have two potential</span></div>
+<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> solutions:</span></div>
+<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"></span></div>
+<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> 1. Use gpr_timespec or std::chrono::system_clock::time_point instead</span></div>
+<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="comment"> 2. Specialize the TimePoint class with whichever time class that you</span></div>
+<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> want to use here. See below for two examples of how to do this.</span></div>
+<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> */</span></div>
+<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
+<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T&gt;</div>
+<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point.html"> 53</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_time_point.html">TimePoint</a> {</div>
+<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad"> 55</a></span>&#160; <a class="code" href="classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad">TimePoint</a>(<span class="keyword">const</span> T&amp; time) { you_need_a_specialization_of_TimePoint(); }</div>
+<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6"> 56</a></span>&#160; gpr_timespec <a class="code" href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">raw_time</a>() {</div>
+<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; gpr_timespec t;</div>
+<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">return</span> t;</div>
+<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; }</div>
+<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div>
+<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordtype">void</span> you_need_a_specialization_of_TimePoint();</div>
+<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;};</div>
+<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;</div>
+<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword">template</span> &lt;&gt;</div>
+<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html"> 66</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_time_point.html">TimePoint</a>&lt;gpr_timespec&gt; {</div>
+<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007"> 68</a></span>&#160; <a class="code" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007">TimePoint</a>(<span class="keyword">const</span> gpr_timespec&amp; time) : time_(time) {}</div>
+<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2"> 69</a></span>&#160; gpr_timespec <a class="code" href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2">raw_time</a>() { <span class="keywordflow">return</span> time_; }</div>
+<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;</div>
+<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; gpr_timespec time_;</div>
+<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;};</div>
+<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div>
+<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
+<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#ifndef GRPC_CXX0X_NO_CHRONO</span></div>
+<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor">#include &lt;chrono&gt;</span></div>
+<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
+<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="preprocessor">#include &lt;grpc/support/time.h&gt;</span></div>
+<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;</div>
+<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="keyword">namespace </span>grpc {</div>
+<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;</div>
+<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment">// from and to should be absolute time.</span></div>
+<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c">Timepoint2Timespec</a>(<span class="keyword">const</span> std::chrono::system_clock::time_point&amp; from,</div>
+<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; gpr_timespec* to);</div>
+<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="keywordtype">void</span> <a class="code" href="namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369">TimepointHR2Timespec</a>(</div>
+<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">const</span> std::chrono::high_resolution_clock::time_point&amp; from,</div>
+<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; gpr_timespec* to);</div>
+<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
+<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;std::chrono::system_clock::time_point <a class="code" href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">Timespec2Timepoint</a>(gpr_timespec t);</div>
+<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
+<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="keyword">template</span> &lt;&gt;</div>
+<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html"> 95</a></span>&#160;<span class="keyword">class </span><a class="code" href="classgrpc_1_1_time_point.html">TimePoint</a>&lt;std::chrono::system_clock::time_point&gt; {</div>
+<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">public</span>:</div>
+<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f"> 97</a></span>&#160; <a class="code" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f">TimePoint</a>(<span class="keyword">const</span> std::chrono::system_clock::time_point&amp; time) {</div>
+<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <a class="code" href="namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c">Timepoint2Timespec</a>(time, &amp;time_);</div>
+<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; }</div>
+<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93"> 100</a></span>&#160; gpr_timespec <a class="code" href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93">raw_time</a>()<span class="keyword"> const </span>{ <span class="keywordflow">return</span> time_; }</div>
+<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
+<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keyword">private</span>:</div>
+<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; gpr_timespec time_;</div>
+<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;};</div>
+<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
+<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;} <span class="comment">// namespace grpc</span></div>
+<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div>
+<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor">#endif // !GRPC_CXX0X_NO_CHRONO</span></div>
+<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor"></span></div>
+<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#endif // GRPCXX_TIME_H</span></div>
+<div class="ttc" id="namespacegrpc_html_a8b3b542af97e1ae35f327c7095d98369"><div class="ttname"><a href="namespacegrpc.html#a8b3b542af97e1ae35f327c7095d98369">grpc::TimepointHR2Timespec</a></div><div class="ttdeci">void TimepointHR2Timespec(const std::chrono::high_resolution_clock::time_point &amp;from, gpr_timespec *to)</div></div>
+<div class="ttc" id="config_8h_html"><div class="ttname"><a href="config_8h.html">config.h</a></div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_html_adb76465d3bf0fef9ad5b918f0ea6a9b6"><div class="ttname"><a href="classgrpc_1_1_time_point.html#adb76465d3bf0fef9ad5b918f0ea6a9b6">grpc::TimePoint::raw_time</a></div><div class="ttdeci">gpr_timespec raw_time()</div><div class="ttdef"><b>Definition:</b> time.h:56</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_html"><div class="ttname"><a href="classgrpc_1_1_time_point.html">grpc::TimePoint</a></div><div class="ttdef"><b>Definition:</b> time.h:53</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_3_01gpr__timespec_01_4_html_a092aa1afe85bf73a10bf906bb9924007"><div class="ttname"><a href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a092aa1afe85bf73a10bf906bb9924007">grpc::TimePoint&lt; gpr_timespec &gt;::TimePoint</a></div><div class="ttdeci">TimePoint(const gpr_timespec &amp;time)</div><div class="ttdef"><b>Definition:</b> time.h:68</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4_html_ad4276af3251c142fbe7f161391609d4f"><div class="ttname"><a href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ad4276af3251c142fbe7f161391609d4f">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;::TimePoint</a></div><div class="ttdeci">TimePoint(const std::chrono::system_clock::time_point &amp;time)</div><div class="ttdef"><b>Definition:</b> time.h:97</div></div>
+<div class="ttc" id="namespacegrpc_html_a4e160d3739280d51ec130ab1bb1c549c"><div class="ttname"><a href="namespacegrpc.html#a4e160d3739280d51ec130ab1bb1c549c">grpc::Timepoint2Timespec</a></div><div class="ttdeci">void Timepoint2Timespec(const std::chrono::system_clock::time_point &amp;from, gpr_timespec *to)</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_html_aebfa8f327b7609f7e895845b36f060ad"><div class="ttname"><a href="classgrpc_1_1_time_point.html#aebfa8f327b7609f7e895845b36f060ad">grpc::TimePoint::TimePoint</a></div><div class="ttdeci">TimePoint(const T &amp;time)</div><div class="ttdef"><b>Definition:</b> time.h:55</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_3_01gpr__timespec_01_4_html_a2f952629962fc23855496ac08a70f6e2"><div class="ttname"><a href="classgrpc_1_1_time_point_3_01gpr__timespec_01_4.html#a2f952629962fc23855496ac08a70f6e2">grpc::TimePoint&lt; gpr_timespec &gt;::raw_time</a></div><div class="ttdeci">gpr_timespec raw_time()</div><div class="ttdef"><b>Definition:</b> time.h:69</div></div>
+<div class="ttc" id="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4_html_ac6d6a7d1e3ed219fff1dcc5961874f93"><div class="ttname"><a href="classgrpc_1_1_time_point_3_01std_1_1chrono_1_1system__clock_1_1time__point_01_4.html#ac6d6a7d1e3ed219fff1dcc5961874f93">grpc::TimePoint&lt; std::chrono::system_clock::time_point &gt;::raw_time</a></div><div class="ttdeci">gpr_timespec raw_time() const </div><div class="ttdef"><b>Definition:</b> time.h:100</div></div>
+<div class="ttc" id="namespacegrpc_html_a12896f279762d0100669da708d466ec1"><div class="ttname"><a href="namespacegrpc.html#a12896f279762d0100669da708d466ec1">grpc::Timespec2Timepoint</a></div><div class="ttdeci">std::chrono::system_clock::time_point Timespec2Timepoint(gpr_timespec t)</div></div>
+</div><!-- fragment --></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/><address class="footer"><small>
+Generated on Wed Aug 5 2015 08:17:06 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
+<img class="footer" src="doxygen.png" alt="doxygen"/>
+</a> 1.8.6
+</small></address>
+</body>
+</html>