QtProtobuf
0.6
Protobuf plugin to generate Qt classes
qtprotobuf
src
grpc
qtgrpcglobal.h
1
/*
2
* MIT License
3
*
4
* Copyright (c) 2019 Alexey Edelev <semlanik@gmail.com>
5
*
6
* This file is part of QtProtobuf project https://git.semlanik.org/semlanik/qtprotobuf
7
*
8
* Permission is hereby granted, free of charge, to any person obtaining a copy of this
9
* software and associated documentation files (the "Software"), to deal in the Software
10
* without restriction, including without limitation the rights to use, copy, modify,
11
* merge, publish, distribute, sublicense, and/or sell copies of the Software, and
12
* to permit persons to whom the Software is furnished to do so, subject to the following
13
* conditions:
14
*
15
* The above copyright notice and this permission notice shall be included in all copies
16
* or substantial portions of the Software.
17
*
18
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
19
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
20
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE
21
* FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
22
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23
* DEALINGS IN THE SOFTWARE.
24
*/
25
26
#pragma once
27
28
#include <QtCore/QtGlobal>
29
30
#ifndef QT_PROTOBUF_STATIC
31
#ifdef QT_BUILD_GRPC_LIB
32
#define Q_GRPC_EXPORT Q_DECL_EXPORT
33
#else
34
#define Q_GRPC_EXPORT Q_DECL_IMPORT
35
#endif
36
#else
37
#define Q_GRPC_EXPORT
38
#endif
39
40
//Support macro for Qt versions < 5.13
41
//TODO: remove once migration to 5.14 as minimum required version is completed
42
#ifndef Q_DISABLE_MOVE
43
#define Q_DISABLE_MOVE(Class) \
44
Class(Class &&) = delete; \
45
Class &operator=(Class &&) = delete;
46
#endif
47
48
#ifndef Q_DISABLE_COPY_MOVE
49
#define Q_DISABLE_COPY_MOVE(Class) \
50
Q_DISABLE_COPY(Class) \
51
Q_DISABLE_MOVE(Class)
52
#endif
53
54
#ifndef Q_GRPC_IMPORT_QUICK_PLUGIN
55
#ifdef QT_PROTOBUF_STATIC
56
#include <QtPlugin>
57
#include <QQmlExtensionPlugin>
58
#define Q_GRPC_IMPORT_QUICK_PLUGIN() \
59
Q_IMPORT_PLUGIN(QtGrpcQuickPlugin) \
60
qobject_cast<QQmlExtensionPlugin*>(qt_static_plugin_QtGrpcQuickPlugin().instance())->registerTypes("QtGrpc"
);
61
#else
62
#define Q_GRPC_IMPORT_QUICK_PLUGIN()
63
#endif
//QT_PROTOBUF_STATIC
64
#endif
//Q_PROTOBUF_IMPORT_QUICK_PLUGIN
65
66
#include <memory>
67
68
namespace
QtProtobuf {
69
class
QGrpcAsyncReply;
70
class
QGrpcSubscription;
71
using
QGrpcAsyncReplyShared = std::shared_ptr<QGrpcAsyncReply>;
72
using
QGrpcSubscriptionShared = std::shared_ptr<QGrpcSubscription>;
73
}
Generated by
1.9.1