Sur cette page

QAbstractGrpcChannel Class

La classe QAbstractGrpcChannel fournit une interface pour la mise en œuvre de la couche transport des opérations gRPC opérations. Plus d'informations...

En-tête : #include <QAbstractGrpcChannel>
CMake : find_package(Qt6 REQUIRED COMPONENTS Grpc)
target_link_libraries(mytarget PRIVATE Qt6::Grpc)
Depuis : Qt 6.5
Hérité par :

QGrpcHttp2Channel

Fonctions publiques

virtual ~QAbstractGrpcChannel()
const QGrpcChannelOptions &channelOptions() const &
virtual std::shared_ptr<QAbstractProtobufSerializer> serializer() const = 0
(since 6.8) void setChannelOptions(QGrpcChannelOptions &&options)
(since 6.8) void setChannelOptions(const QGrpcChannelOptions &options)

Fonctions protégées

QAbstractGrpcChannel()
QAbstractGrpcChannel(const QGrpcChannelOptions &options)

Fonctions privées

(since 6.7) virtual void bidiStream(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0
(since 6.7) virtual void call(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0
(since 6.7) virtual void clientStream(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0
(since 6.7) virtual void serverStream(QGrpcOperationContext *operationContext, QByteArray &&messageData) = 0

Description détaillée

La mise en œuvre de cette interface permet de créer un canal personnalisé pour les gRPC transport. La classe QGrpcHttp2Channel est fournie en tant qu'implémentation complète de QAbstractGrpcChannel pour la communication HTTP/2.

Voir également QGrpcChannelOptions et QGrpcHttp2Channel.

Documentation des fonctions membres

[protected] QAbstractGrpcChannel::QAbstractGrpcChannel()

Par défaut - construit le canal QAbstractGrpcChannel.

[explicit protected] QAbstractGrpcChannel::QAbstractGrpcChannel(const QGrpcChannelOptions &options)

Construit le QAbstractGrpcChannel en utilisant le options spécifié.

[virtual noexcept] QAbstractGrpcChannel::~QAbstractGrpcChannel()

Détruit le site QAbstractGrpcChannel.

[pure virtual private, since 6.7] void QAbstractGrpcChannel::bidiStream(QGrpcOperationContext *operationContext, QByteArray &&messageData)

Cette fonction virtuelle pure est appelée lorsqu'un utilisateur lance une nouvelle RPC par l'intermédiaire de l'interface client générée. L'objet operationContext doit être utilisé pour communiquer avec le gestionnaire RPC correspondant, qui est un type dérivé de l'objet QGrpcOperation.

Cette fonction doit démarrer la RPC correspondante du côté du canal avec l'objet sérialisé messageData. L'implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Note : Il est de la responsabilité du canal de supporter et de restreindre le sous-ensemble de fonctionnalités que son type RPC autorise.

Cette fonction a été introduite dans Qt 6.7.

[pure virtual private, since 6.7] void QAbstractGrpcChannel::call(QGrpcOperationContext *operationContext, QByteArray &&messageData)

Cette fonction virtuelle pure est appelée lorsqu'un utilisateur lance une nouvelle RPC par l'intermédiaire de l'interface client générée. L'objet operationContext doit être utilisé pour communiquer avec le gestionnaire RPC correspondant, qui est un type dérivé de l'objet QGrpcOperation.

Cette fonction doit démarrer la RPC correspondante du côté du canal avec l'objet sérialisé messageData. L'implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Note : Il est de la responsabilité du canal de supporter et de restreindre le sous-ensemble de fonctionnalités que son type RPC autorise.

Cette fonction a été introduite dans Qt 6.7.

[noexcept] const QGrpcChannelOptions &QAbstractGrpcChannel::channelOptions() const &

Renvoie les options utilisées par le canal.

Voir aussi setChannelOptions.

[pure virtual private, since 6.7] void QAbstractGrpcChannel::clientStream(QGrpcOperationContext *operationContext, QByteArray &&messageData)

Cette fonction virtuelle pure est appelée lorsqu'un utilisateur lance une nouvelle RPC par l'intermédiaire de l'interface client générée. L'objet operationContext doit être utilisé pour communiquer avec le gestionnaire RPC correspondant, qui est un type dérivé de l'objet QGrpcOperation.

Cette fonction doit démarrer la RPC correspondante du côté du canal avec l'objet sérialisé messageData. L'implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Note : Il est de la responsabilité du canal de supporter et de restreindre le sous-ensemble de fonctionnalités que son type RPC autorise.

Cette fonction a été introduite dans Qt 6.7.

[pure virtual] std::shared_ptr<QAbstractProtobufSerializer> QAbstractGrpcChannel::serializer() const

Cette fonction purement virtuelle récupère le site QAbstractProtobufSerializer utilisé pour la sérialisation et la désérialisation des messages.

[pure virtual private, since 6.7] void QAbstractGrpcChannel::serverStream(QGrpcOperationContext *operationContext, QByteArray &&messageData)

Cette fonction virtuelle pure est appelée lorsqu'un utilisateur lance une nouvelle RPC par l'intermédiaire de l'interface client générée. L'objet operationContext doit être utilisé pour communiquer avec le gestionnaire RPC correspondant, qui est un type dérivé de l'objet QGrpcOperation.

Cette fonction doit démarrer la RPC correspondante du côté du canal avec l'objet sérialisé messageData. L'implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Note : Il est de la responsabilité du canal de supporter et de restreindre le sous-ensemble de fonctionnalités que son type RPC autorise.

Cette fonction a été introduite dans Qt 6.7.

[since 6.8] void QAbstractGrpcChannel::setChannelOptions(const QGrpcChannelOptions &options)

[since 6.8] void QAbstractGrpcChannel::setChannelOptions(QGrpcChannelOptions &&options)

Définit le canal options.

Note : Les options de canal mises à jour n'affectent pas les appels ou les flux actuellement actifs. Les options révisées ne s'appliqueront qu'aux nouvelles RPC effectuées par l'intermédiaire de ce canal.

Ces fonctions ont été introduites dans Qt 6.8.

Voir aussi channelOptions.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.