34 #ifndef GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_H 
   35 #define GRPC_INTERNAL_CORE_CLIENT_CONFIG_SUBCHANNEL_H 
   46 #ifdef GRPC_SUBCHANNEL_REFCOUNT_DEBUG 
   47 #define GRPC_SUBCHANNEL_REF(p, r) \ 
   48   grpc_subchannel_ref((p), __FILE__, __LINE__, (r)) 
   49 #define GRPC_SUBCHANNEL_UNREF(p, r) \ 
   50   grpc_subchannel_unref((p), __FILE__, __LINE__, (r)) 
   51 #define GRPC_SUBCHANNEL_CALL_REF(p, r) \ 
   52   grpc_subchannel_call_ref((p), __FILE__, __LINE__, (r)) 
   53 #define GRPC_SUBCHANNEL_CALL_UNREF(p, r) \ 
   54   grpc_subchannel_call_unref((p), __FILE__, __LINE__, (r)) 
   55 #define GRPC_SUBCHANNEL_REF_EXTRA_ARGS \ 
   56   , const char *file, int line, const char *reason 
   58 #define GRPC_SUBCHANNEL_REF(p, r) grpc_subchannel_ref((p)) 
   59 #define GRPC_SUBCHANNEL_UNREF(p, r) grpc_subchannel_unref((p)) 
   60 #define GRPC_SUBCHANNEL_CALL_REF(p, r) grpc_subchannel_call_ref((p)) 
   61 #define GRPC_SUBCHANNEL_CALL_UNREF(p, r) grpc_subchannel_call_unref((p)) 
   62 #define GRPC_SUBCHANNEL_REF_EXTRA_ARGS 
Definition: channel_stack.h:64
 
grpc_connectivity_state
Connectivity state of a channel. 
Definition: grpc.h:145
 
void grpc_subchannel_process_transport_op(grpc_subchannel *subchannel, grpc_transport_op *op)
process a transport level op 
Definition: subchannel.c:406
 
const grpc_channel_args * args
Channel arguments to be supplied to the newly created channel. 
Definition: subchannel.h:115
 
grpc_channel * master
master channel 
Definition: subchannel.h:122
 
size_t filter_count
The number of filters in the above array. 
Definition: subchannel.h:113
 
void grpc_subchannel_unref(grpc_subchannel *channel)
 
const grpc_channel_filter ** filters
Channel filters for this channel - wrapped factories will likely want to mutate this. 
Definition: subchannel.h:111
 
An array of arguments that can be passed around. 
Definition: grpc.h:111
 
#define GRPC_SUBCHANNEL_REF_EXTRA_ARGS
Definition: subchannel.h:62
 
Definition: subchannel.h:108
 
void grpc_subchannel_del_interested_party(grpc_subchannel *channel, grpc_pollset *pollset)
stop following channel's activity through pollset. 
Definition: subchannel.c:270
 
Definition: transport.h:66
 
void grpc_subchannel_add_interested_party(grpc_subchannel *channel, grpc_pollset *pollset)
express interest in channel's activities through pollset. 
Definition: subchannel.c:265
 
Definition: secure_channel_create.c:55
 
Definition: pollset_posix.h:55
 
Definition: subchannel.c:77
 
void grpc_subchannel_notify_on_state_change(grpc_subchannel *channel, grpc_connectivity_state *state, grpc_iomgr_closure *notify)
call notify when the connectivity state of a channel changes from *state. 
Definition: subchannel.c:386
 
grpc_connectivity_state grpc_subchannel_check_connectivity(grpc_subchannel *channel)
poll the current connectivity state of a channel 
Definition: subchannel.c:378
 
Definition: metadata.c:98
 
Definition: connector.h:44
 
size_t addr_len
Definition: subchannel.h:118
 
A closure over a grpc_iomgr_cb_func. 
Definition: iomgr.h:45
 
void grpc_subchannel_call_ref(grpc_subchannel_call *call)
 
struct sockaddr * addr
Address to connect to. 
Definition: subchannel.h:117
 
char * grpc_subchannel_call_get_peer(grpc_subchannel_call *subchannel_call)
continue querying for peer 
Definition: subchannel.c:710
 
void grpc_subchannel_ref(grpc_subchannel *channel)
 
grpc_subchannel * grpc_subchannel_create(grpc_connector *connector, grpc_subchannel_args *args)
create a subchannel given a connector 
Definition: subchannel.c:279
 
grpc_mdctx * mdctx
metadata context to use 
Definition: subchannel.h:120
 
void grpc_subchannel_call_unref(grpc_subchannel_call *call)
 
void grpc_subchannel_create_call(grpc_subchannel *subchannel, grpc_pollset *pollset, grpc_subchannel_call **target, grpc_iomgr_closure *notify)
construct a call (possibly asynchronously) 
Definition: subchannel.c:339
 
void grpc_subchannel_call_process_op(grpc_subchannel_call *subchannel_call, grpc_transport_stream_op *op)
continue processing a transport op 
Definition: subchannel.c:716
 
Transport op: a set of operations to perform on a transport as a whole. 
Definition: transport.h:96
 
Definition: subchannel.c:138