Sur cette page

QAbstractGrpcChannel Class

La classe `QAbstractGrpcChannel` fournit une interface permettant de mettre en œuvre la couche de transport des gRPC™ opérations. En savoir plus...

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

Implémentez cette interface pour créer un canal personnalisé pour le 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()

Construit par défaut l'objet `QAbstractGrpcChannel`.

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

Construit l'objet `QAbstractGrpcChannel` à l'aide de l'options` spécifié.

[virtual noexcept] QAbstractGrpcChannel::~QAbstractGrpcChannel()

Supprime l'QAbstractGrpcChannel.

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

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

Cette fonction doit lancer le RPC correspondant côté canal avec l’ messageData sérialisé. L’implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Remarque : il incombe au canal de prendre en charge et de restreindre le sous-ensemble de fonctionnalités autorisées par son type RPC.

Cette fonction a été introduite dans Qt 6.7.

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

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

Cette fonction doit lancer l’appel RPC correspondant côté canal à l’aide de l’ messageData sérialisé. L’implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Remarque : il incombe au canal de prendre en charge et de restreindre le sous-ensemble de fonctionnalités autorisées par son type RPC.

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 purement virtuelle est appelée lorsqu’un utilisateur lance un nouveau RPC via l’interface client générée. L’ operationContext doit être utilisé pour communiquer avec le gestionnaire RPC correspondant, qui est un type dérivé de l’objet QGrpcOperation.

Cette fonction doit lancer le RPC correspondant côté canal avec l’ messageData sérialisé. L’implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Remarque : il incombe au canal de prendre en charge et de restreindre le sous-ensemble de fonctionnalités autorisées par son type RPC.

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 l'QAbstractProtobufSerializer e 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 purement virtuelle est appelée lorsqu'un utilisateur lance un nouveau RPC via l'interface client générée. L'operationContext doit être utilisé pour communiquer avec le gestionnaire RPC correspondant, qui est un type dérivé de l'objet QGrpcOperation.

Cette fonction doit lancer le RPC correspondant côté canal à l'aide de l'messageData sérialisée. L'implémentation doit être asynchrone et ne doit pas bloquer le thread appelant.

Remarque : il incombe au canal de prendre en charge et de restreindre le sous-ensemble de fonctionnalités autorisées par son type RPC.

Cette fonction a été introduite dans Qt 6.7.

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

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

Définit l'options du canal.

Remarque : les options de canal mises à jour n'affectent pas les appels ou les flux actuellement actifs. Les options révisées s'appliqueront uniquement aux nouveaux appels RPC effectués via ce canal.

Ces fonctions ont été introduites dans Qt 6.8.

Voir également 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.