Moved qsniff to separate sub-project

This commit is contained in:
Michael Mandl 2017-10-19 14:29:03 +02:00
parent 1d2084a017
commit fa85202c3d
9 changed files with 32 additions and 23 deletions

View file

@ -0,0 +1,24 @@
project(qSniff)
cmake_minimum_required(VERSION 3.6)
find_package(Qt5Widgets)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_AUTOMOC ON)
set(CMAKE_AUTOUIC ON)
add_executable(${PROJECT_NAME}
qsniff.cpp
mainwindow.cpp
mainwindow.h
mainwindow.ui
sniffthread.cpp
sniffthread.h
)
target_link_libraries(${PROJECT_NAME}
sniffer
Qt5::Widgets
)

View file

@ -0,0 +1,29 @@
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "sniffthread.h"
#include <QTime>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
connect(ui->pushButton, &QPushButton::clicked, ui->listWidget, &QListWidget::clear);
SniffThread *sniffThread = new SniffThread();
connect(sniffThread, &SniffThread::dataReceived, this, &MainWindow::dataReceived);
sniffThread->start();
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::dataReceived(QString data)
{
QTime currentTime = QTime::currentTime();
ui->listWidget->addItem(currentTime.toString(Qt::ISODate) + ": " + data);
}

View file

@ -0,0 +1,26 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QString>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private slots:
void dataReceived(QString data);
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H

View file

@ -0,0 +1,63 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>452</width>
<height>312</height>
</rect>
</property>
<property name="windowTitle">
<string>qSniff</string>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label">
<property name="text">
<string>Intercepted 433MHz transmissions</string>
</property>
</widget>
</item>
<item>
<widget class="QListWidget" name="listWidget"/>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButton">
<property name="maximumSize">
<size>
<width>100</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Clear</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
<resources/>
<connections/>
</ui>

12
source/qsniff/qsniff.cpp Normal file
View file

@ -0,0 +1,12 @@
#include <QApplication>
#include "mainwindow.h"
int main(int argc, char **argv)
{
QApplication app(argc, argv);
MainWindow mainWindow;
mainWindow.show();
return app.exec();
}

View file

@ -0,0 +1,23 @@
#include "sniffthread.h"
#include "sniffer.h"
#include <sstream>
void SniffThread::run()
{
Sniffer sniffer(6);
while (true)
{
unsigned int data = sniffer.receive();
if (data != 0)
{
std::stringstream dataStream;
dataStream << data;
emit dataReceived(dataStream.str().c_str());
}
delay(100);
}
}

View file

@ -0,0 +1,16 @@
#pragma once
#include <QThread>
#include <QString>
class SniffThread : public QThread
{
Q_OBJECT
protected:
void run() override;
signals:
void dataReceived(QString data);
};