qTox
Version: nightly | Commit: bc751c8e1cac455f9690654fcfe0f560d2d7dfdd
|
Go to the documentation of this file.
31 #include <unordered_map>
35 struct ToxExtensionMessages;
36 struct ToxExtPacketList;
56 static std::unique_ptr<CoreExt>
makeCoreExt(Tox* core);
75 void onLosslessPacket(uint32_t friendId,
const uint8_t* data,
size_t length);
112 bool send()
override;
123 std::unique_ptr<ICoreExtPacket>
getPacket(uint32_t friendId)
override;
static void onExtendedMessageReceived(uint32_t friendId, const uint8_t *data, size_t size, void *userData)
void onLosslessPacket(uint32_t friendId, const uint8_t *data, size_t length)
Handles extension related lossless packets.
void process()
Periodic service function.
std::unordered_map< uint32_t, Status::Status > currentStatuses
static void onExtendedMessageReceipt(uint32_t friendId, uint64_t receiptId, void *userData)
void extendedMessageSupport(uint32_t friendId, bool supported)
ExtensionPtr< ToxExt > toxExt
ToxExtensionMessages * toxExtMessages
uint64_t addExtendedMessage(QString message) override
Adds message to packet.
ExtensionPtr< ToxExtensionMessages > toxExtMessages
std::unique_ptr< T, void(*)(T *)> ExtensionPtr
void extendedMessageReceived(uint32_t friendId, const QString &message)
ToxExtPacketList * packetList
std::mutex * toxext_mutex
bool send() override
Consumes the packet constructed with PacketBuilder packet and sends it to toxext.
CoreExt(CoreExt const &other)=delete
Packet(ToxExtPacketList *packetList, ToxExtensionMessages *toxExtMessages, uint32_t friendId, std::mutex *toxext_mutex, PacketPassKey)
Internal constructor for a packet.
static void onExtendedMessageNegotiation(uint32_t friendId, bool compatible, uint64_t maxMessageSize, void *userData)
void extendedReceiptReceived(uint32_t friendId, uint64_t receiptId)
static std::unique_ptr< CoreExt > makeCoreExt(Tox *core)
Creates a CoreExt instance. Using a pointer here makes our registrations with extensions significantl...
uint64_t getMaxExtendedMessageSize()
void onFriendStatusChanged(uint32_t friendId, Status::Status status)
CoreExt & operator=(CoreExt const &other)=delete
std::unique_ptr< ICoreExtPacket > getPacket(uint32_t friendId) override
Gets a new packet builder for friend with core friend id friendId.