19 #ifndef GRPC_CORE_LIB_SURFACE_CHANNEL_H
20 #define GRPC_CORE_LIB_SURFACE_CHANNEL_H
82 explicit RegisteredCall(
const char* method_arg,
const char* host_arg);
123 #define CHANNEL_STACK_FROM_CHANNEL(c) ((grpc_channel_stack*)((c) + 1))
142 const char* reason) {
146 const char* reason) {
149 #define GRPC_CHANNEL_INTERNAL_REF(channel, reason) \
150 grpc_channel_internal_ref(channel, reason)
151 #define GRPC_CHANNEL_INTERNAL_UNREF(channel, reason) \
152 grpc_channel_internal_unref(channel, reason)
160 #define GRPC_CHANNEL_INTERNAL_REF(channel, reason) \
161 grpc_channel_internal_ref(channel)
162 #define GRPC_CHANNEL_INTERNAL_UNREF(channel, reason) \
163 grpc_channel_internal_unref(channel)
173 void* tag,
void* reserved);
#define GRPC_CHANNEL_STACK_REF(channel_stack, reason)
Definition: channel_stack.h:247
#define GRPC_CHANNEL_STACK_UNREF(channel_stack, reason)
Definition: channel_stack.h:249
grpc_channel_stack_type
Definition: channel_stack_type.h:26
T * get() const
Definition: ref_counted_ptr.h:147
Definition: channelz.h:174
int64_t grpc_millis
Definition: exec_ctx.h:37
intptr_t gpr_atm
Definition: atm_gcc_atomic.h:30
grpc_error_handle error
Definition: lame_client.cc:54
Round Robin Policy.
Definition: backend_metric.cc:26
struct grpc_pollset_set grpc_pollset_set
Definition: pollset_set.h:31
void grpc_channel_ping(grpc_channel *channel, grpc_completion_queue *cq, void *tag, void *reserved)
Definition: channel_ping.cc:47
size_t grpc_channel_get_call_size_estimate(grpc_channel *channel)
Definition: channel.cc:284
grpc_compression_options grpc_channel_compression_options(const grpc_channel *channel)
Definition: channel.h:125
grpc_channel * grpc_channel_create(const char *target, const grpc_channel_args *args, grpc_channel_stack_type channel_stack_type, grpc_transport *optional_transport, grpc_resource_user *resource_user=nullptr, grpc_error_handle *error=nullptr)
Definition: channel.cc:223
#define CHANNEL_STACK_FROM_CHANNEL(c)
Definition: channel.h:123
void grpc_channel_update_call_size_estimate(grpc_channel *channel, size_t size)
Definition: channel.cc:298
grpc_core::channelz::ChannelNode * grpc_channel_get_channelz_node(grpc_channel *channel)
Definition: channel.h:135
void grpc_channel_internal_unref(grpc_channel *channel, const char *reason)
Definition: channel.h:145
grpc_channel * grpc_channel_create_with_builder(grpc_channel_stack_builder *builder, grpc_channel_stack_type channel_stack_type, grpc_error_handle *error=nullptr)
Definition: channel.cc:59
grpc_call * grpc_channel_create_pollset_set_call(grpc_channel *channel, grpc_call *parent_call, uint32_t propagation_mask, grpc_pollset_set *pollset_set, const grpc_slice &method, const grpc_slice *host, grpc_millis deadline, void *reserved)
Create a call given a grpc_channel, in order to call method.
Definition: channel.cc:397
void grpc_channel_destroy_internal(grpc_channel *channel)
The same as grpc_channel_destroy, but doesn't create an ExecCtx, and so is safe to use from within co...
Definition: channel.cc:520
grpc_channel_stack * grpc_channel_get_channel_stack(grpc_channel *channel)
Get a (borrowed) pointer to this channels underlying channel stack.
Definition: channel.h:130
void grpc_channel_internal_ref(grpc_channel *channel, const char *reason)
Definition: channel.h:141
An array of arguments that can be passed around.
Definition: grpc_types.h:132
Definition: channel_stack_builder.cc:36
Definition: channel_stack.h:182
Definition: channel.h:105
grpc_core::RefCountedPtr< grpc_core::channelz::ChannelNode > channelz_node
Definition: channel.h:119
gpr_atm call_size_estimate
Definition: channel.h:109
int is_client
Definition: channel.h:106
grpc_resource_user * resource_user
Definition: channel.h:110
grpc_compression_options compression_options
Definition: channel.h:107
char * target
Definition: channel.h:121
grpc_core::ManualConstructor< grpc_core::CallRegistrationTable > registration_table
Definition: channel.h:118
Definition: completion_queue.cc:339
Definition: compression_types.h:79
grpc_core::Mutex mu
Definition: channel.h:94
std::map< std::pair< std::string, std::string >, RegisteredCall > map ABSL_GUARDED_BY(mu)
int method_registration_attempts ABSL_GUARDED_BY(mu)=0
grpc_mdelem path
Definition: channel.h:79
RegisteredCall & operator=(const RegisteredCall &)=delete
std::string host
Definition: channel.h:77
RegisteredCall(const char *method_arg, const char *host_arg)
Definition: channel.cc:412
std::string method
Definition: channel.h:76
grpc_mdelem authority
Definition: channel.h:80
RegisteredCall & operator=(RegisteredCall &&)=delete
~RegisteredCall()
Definition: channel.cc:443
Definition: error_internal.h:41
Definition: metadata.h:98
Definition: resource_quota.cc:65
A grpc_slice s, if initialized, represents the byte range s.bytes[0..s.length-1].
Definition: slice.h:60
Definition: transport_impl.h:66