TTKMusicPlayer
4.2.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
TTKModule
TTKCore
musicNetworkKits
tools
musicnetworkthread.cpp
Go to the documentation of this file.
1
#include "
musicnetworkthread.h
"
2
#include "
musicconnectionpool.h
"
3
#include "
musicsettingmanager.h
"
4
#include "
ttkconcurrent.h
"
5
6
#include <QHostInfo>
7
8
static
constexpr
int
NETWORK_DETECT_INTERVAL
= 5000;
// second
9
static
constexpr
const
char
*
NETWORK_REQUEST_ADDRESS
=
"www.baidu.com"
;
// ip
10
11
MusicNetworkThread::MusicNetworkThread
()
12
: QObject(nullptr),
13
m_networkState(true)
14
{
15
connect(&
m_timer
, SIGNAL(timeout()), SLOT(
networkStateChanged
()));
16
17
G_CONNECTION_PTR
->setValue(className(),
this
);
18
}
19
20
MusicNetworkThread::~MusicNetworkThread
()
21
{
22
m_timer
.stop();
23
}
24
25
void
MusicNetworkThread::start
()
26
{
27
TTK_INFO_STREAM
(
"Load NetworkThread"
);
28
m_timer
.start(
NETWORK_DETECT_INTERVAL
);
29
networkStateChanged
();
30
}
31
32
void
MusicNetworkThread::setBlockNetwork
(
bool
block) noexcept
33
{
34
G_SETTING_PTR
->setValue(
MusicSettingManager::CloseNetWorkMode
, block);
35
}
36
37
void
MusicNetworkThread::networkStateChanged
()
38
{
39
TTKConcurrent
(
40
{
41
const
bool
block =
G_SETTING_PTR
->value(
MusicSettingManager::CloseNetWorkMode
).toBool();
42
const
QHostInfo &info = QHostInfo::fromName(
NETWORK_REQUEST_ADDRESS
);
43
m_networkState
= !info.addresses().isEmpty();
44
m_networkState
= block ?
false
:
m_networkState
;
45
Q_EMIT
networkConnectionStateChanged
(
m_networkState
);
46
});
47
}
MusicNetworkThread::networkStateChanged
void networkStateChanged()
Definition:
musicnetworkthread.cpp:37
MusicNetworkThread::m_networkState
bool m_networkState
Definition:
musicnetworkthread.h:75
MusicNetworkThread::networkConnectionStateChanged
void networkConnectionStateChanged(bool state)
NETWORK_REQUEST_ADDRESS
static constexpr const char * NETWORK_REQUEST_ADDRESS
Definition:
musicnetworkthread.cpp:9
G_CONNECTION_PTR
#define G_CONNECTION_PTR
Definition:
musicconnectionpool.h:68
NETWORK_DETECT_INTERVAL
static constexpr int NETWORK_DETECT_INTERVAL
Definition:
musicnetworkthread.cpp:8
TTK_INFO_STREAM
#define TTK_INFO_STREAM(msg)
Definition:
ttklogger.h:74
musicnetworkthread.h
ttkconcurrent.h
TTKConcurrent
#define TTKConcurrent(...)
Definition:
ttkconcurrent.h:34
musicsettingmanager.h
MusicNetworkThread::m_timer
QTimer m_timer
Definition:
musicnetworkthread.h:74
musicconnectionpool.h
MusicNetworkThread::setBlockNetwork
void setBlockNetwork(bool block) noexcept
Definition:
musicnetworkthread.cpp:32
MusicNetworkThread::~MusicNetworkThread
~MusicNetworkThread()
Definition:
musicnetworkthread.cpp:20
MusicSettingManager::CloseNetWorkMode
Definition:
musicsettingmanager.h:53
G_SETTING_PTR
#define G_SETTING_PTR
Definition:
musicsettingmanager.h:223
MusicNetworkThread::MusicNetworkThread
MusicNetworkThread()
Definition:
musicnetworkthread.cpp:11
MusicNetworkThread::start
void start()
Definition:
musicnetworkthread.cpp:25
Generated on Sat Jul 19 2025 16:53:01 for TTKMusicPlayer by
1.8.8