4#ifndef QOHOSBLUETOOTHSOCKET_P_H
5#define QOHOSBLUETOOTHSOCKET_P_H
18#include <QtBluetooth/private/qohosbluetoothcommon_p.h>
20#include <QtCore/qbytearray.h>
21#include <QtCore/qobject.h>
22#include <QtCore/qstring.h>
23#include <QtCore/qtconfigmacros.h>
24#include <QtCore/qtypes.h>
30#include <unordered_map>
47 bool connect(
const QString &deviceId,
const QString &uuid,
bool secure);
49 bool write(
const char *data, qint64 maxSize);
66 void onSocketConnected(
std::uint64_t connectRequestId,
std::shared_ptr<
int> socketHandle);
67 void onConnectFailed(
std::uint64_t connectRequestId, QOhosBluetoothErrorCode errorCode);
68 void reportError(QOhosBluetoothErrorCode errorCode);
72 std::shared_ptr<
int> socketHandle;
73 std::shared_ptr<
void> sppReadHandlerHandle;
76 std::shared_ptr<JsScopeData> m_jsScopeData;
77 std::optional<
std::string> m_deviceId;
78 std::uint64_t m_connectRequestsCounter = 0;
79 std::optional<
std::uint64_t> m_pendingConnectRequestId;
81 static std::unordered_map<
int, std::shared_ptr<
int>> &pendingSocketHandles();
bool connect(const QString &deviceId, const QString &uuid, bool secure)
void dataReceived(const QByteArray &data)
std::optional< QString > tryGetPeerDeviceAddress() const
bool write(const char *data, qint64 maxSize)
static void dropPendingSocketHandle(int socketDescriptor)
void errorOccurred(QOhosBluetoothErrorCode errorCode)
static std::shared_ptr< int > takePendingSocketHandle(int socketDescriptor)
std::optional< QString > tryGetPeerDeviceName() const
bool takeOverSocket(std::shared_ptr< int > socketHandle)
static bool registerPendingSocketHandle(std::shared_ptr< int > socketHandle)
constexpr int invalidSocketDescriptor
std::shared_ptr< int > makeSppClientSocketHandle(int socketDescriptor)
std::shared_ptr< int > makeSppServerSocketHandle(int socketDescriptor)
QT_BEGIN_NAMESPACE Q_DECLARE_LOGGING_CATEGORY(lcQIORing)