Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
u
v
w
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
z
Classes
Class List
Class Hierarchy
Class Members
All
:
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
[
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
y
Enumerations
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Properties
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
z
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
x
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
grpc
src
core
ext
filters
client_channel
client_channel_factory.h
Go to the documentation of this file.
1
//
2
// Copyright 2015 gRPC authors.
3
//
4
// Licensed under the Apache License, Version 2.0 (the "License");
5
// you may not use this file except in compliance with the License.
6
// You may obtain a copy of the License at
7
//
8
// http://www.apache.org/licenses/LICENSE-2.0
9
//
10
// Unless required by applicable law or agreed to in writing, software
11
// distributed under the License is distributed on an "AS IS" BASIS,
12
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
// See the License for the specific language governing permissions and
14
// limitations under the License.
15
//
16
17
#ifndef GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
18
#define GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
19
20
#include <
grpc/support/port_platform.h
>
21
22
#include "absl/strings/string_view.h"
23
24
#include <
grpc/impl/codegen/grpc_types.h
>
25
26
#include "
src/core/ext/filters/client_channel/subchannel.h
"
27
#include "
src/core/lib/gprpp/ref_counted_ptr.h
"
28
#include "
src/core/lib/iomgr/resolved_address.h
"
29
30
namespace
grpc_core
{
31
32
class
ClientChannelFactory
{
33
public
:
34
struct
RawPointerChannelArgTag
{};
35
36
virtual
~ClientChannelFactory
() =
default
;
37
38
// Creates a subchannel with the specified args.
39
virtual
RefCountedPtr<Subchannel>
CreateSubchannel
(
40
const
grpc_resolved_address
& address,
const
grpc_channel_args
*
args
) = 0;
41
42
static
absl::string_view
ChannelArgName
();
43
44
// Returns a channel arg containing the specified factory.
45
static
grpc_arg
CreateChannelArg
(
ClientChannelFactory
* factory);
46
47
// Returns the factory from args, or null if not found.
48
static
ClientChannelFactory
*
GetFromChannelArgs
(
49
const
grpc_channel_args
*
args
);
50
};
51
52
}
// namespace grpc_core
53
54
#endif // GRPC_CORE_EXT_FILTERS_CLIENT_CHANNEL_CLIENT_CHANNEL_FACTORY_H
grpc_arg
Definition:
grpc_types.h:103
subchannel.h
grpc_core
Definition:
call_metric_recorder.h:31
absl::string_view
Definition:
abseil-cpp/absl/strings/string_view.h:167
grpc_resolved_address
Definition:
resolved_address.h:34
grpc_core::ClientChannelFactory::RawPointerChannelArgTag
Definition:
client_channel_factory.h:34
resolved_address.h
grpc_channel_args
Definition:
grpc_types.h:132
grpc_types.h
grpc_core::ClientChannelFactory
Definition:
client_channel_factory.h:32
asyncio_get_stats.args
args
Definition:
asyncio_get_stats.py:40
grpc_core::RefCountedPtr
Definition:
ref_counted_ptr.h:35
grpc_core::ClientChannelFactory::CreateChannelArg
static grpc_arg CreateChannelArg(ClientChannelFactory *factory)
Definition:
client_channel_factory.cc:47
grpc_core::ClientChannelFactory::ChannelArgName
static absl::string_view ChannelArgName()
Definition:
client_channel_factory.cc:43
grpc_core::ClientChannelFactory::~ClientChannelFactory
virtual ~ClientChannelFactory()=default
grpc_core::ClientChannelFactory::GetFromChannelArgs
static ClientChannelFactory * GetFromChannelArgs(const grpc_channel_args *args)
Definition:
client_channel_factory.cc:53
ref_counted_ptr.h
grpc_core::ClientChannelFactory::CreateSubchannel
virtual RefCountedPtr< Subchannel > CreateSubchannel(const grpc_resolved_address &address, const grpc_channel_args *args)=0
port_platform.h
grpc
Author(s):
autogenerated on Thu Mar 13 2025 02:58:47