LeechCraft
0.6.70-17609-g3dde4097dd
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
channeldevice.h
Go to the documentation of this file.
1
/**********************************************************************
2
* LeechCraft - modular cross-platform feature rich internet client.
3
* Copyright (C) 2006-2014 Georg Rudoy
4
*
5
* Distributed under the Boost Software License, Version 1.0.
6
* (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7
**********************************************************************/
8
9
#pragma once
10
11
#include <atomic>
12
#include <list>
13
#include <mutex>
14
#include <QIODevice>
15
#include "
sllconfig.h
"
16
17
namespace
LC::Util
18
{
19
class
UTIL_SLL_API
ChannelDevice
:
public
QIODevice
20
{
21
mutable
std::mutex Mutex_;
22
std::list<QByteArray> Chunks_;
23
24
std::atomic_bool Finished_ =
false
;
25
public
:
26
using
QIODevice::QIODevice;
27
28
bool
isSequential
()
const override
;
29
bool
atEnd
()
const override
;
30
31
void
FinishWrite
();
32
protected
:
33
qint64
readData
(
char
*, qint64)
override
;
34
qint64
writeData
(
const
char
*, qint64)
override
;
35
};
36
}
LC::Util::ChannelDevice
Definition
channeldevice.h:20
LC::Util::ChannelDevice::isSequential
bool isSequential() const override
Definition
channeldevice.cpp:14
LC::Util::ChannelDevice::FinishWrite
void FinishWrite()
Definition
channeldevice.cpp:28
LC::Util::ChannelDevice::atEnd
bool atEnd() const override
Definition
channeldevice.cpp:19
LC::Util::ChannelDevice::readData
qint64 readData(char *, qint64) override
Definition
channeldevice.cpp:33
LC::Util::ChannelDevice::writeData
qint64 writeData(const char *, qint64) override
Definition
channeldevice.cpp:69
LC::Util
Definition
icoreproxy.h:34
sllconfig.h
UTIL_SLL_API
#define UTIL_SLL_API
Definition
sllconfig.h:16
src
util
sll
channeldevice.h
Generated by
1.13.2