Compare commits
6 Commits
v0.1.0
...
e331f03185
| Author | SHA1 | Date | |
|---|---|---|---|
| e331f03185 | |||
| ca82512d5b | |||
| 1df62874e9 | |||
|
ccea502734
|
|||
|
68283a6295
|
|||
|
91c12e0ab9
|
35
.clang-tidy
Normal file
35
.clang-tidy
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
---
|
||||||
|
Checks: "clang-diagnostic-*,clang-analyzer-*,cppcoreguidelines-*,modernize-*,-modernize-use-trailing-return-type"
|
||||||
|
WarningsAsErrors: true
|
||||||
|
HeaderFilterRegex: ""
|
||||||
|
AnalyzeTemporaryDtors: false
|
||||||
|
FormatStyle: google
|
||||||
|
CheckOptions:
|
||||||
|
- key: cert-dcl16-c.NewSuffixes
|
||||||
|
value: "L;LL;LU;LLU"
|
||||||
|
- key: cert-oop54-cpp.WarnOnlyIfThisHasSuspiciousField
|
||||||
|
value: "0"
|
||||||
|
- key: cppcoreguidelines-explicit-virtual-functions.IgnoreDestructors
|
||||||
|
value: "1"
|
||||||
|
- key: cppcoreguidelines-non-private-member-variables-in-classes.IgnoreClassesWithAllMemberVariablesBeingPublic
|
||||||
|
value: "1"
|
||||||
|
- key: google-readability-braces-around-statements.ShortStatementLines
|
||||||
|
value: "1"
|
||||||
|
- key: google-readability-function-size.StatementThreshold
|
||||||
|
value: "800"
|
||||||
|
- key: google-readability-namespace-comments.ShortNamespaceLines
|
||||||
|
value: "10"
|
||||||
|
- key: google-readability-namespace-comments.SpacesBeforeComments
|
||||||
|
value: "2"
|
||||||
|
- key: modernize-loop-convert.MaxCopySize
|
||||||
|
value: "16"
|
||||||
|
- key: modernize-loop-convert.MinConfidence
|
||||||
|
value: reasonable
|
||||||
|
- key: modernize-loop-convert.NamingStyle
|
||||||
|
value: CamelCase
|
||||||
|
- key: modernize-pass-by-value.IncludeStyle
|
||||||
|
value: llvm
|
||||||
|
- key: modernize-replace-auto-ptr.IncludeStyle
|
||||||
|
value: llvm
|
||||||
|
- key: modernize-use-nullptr.NullMacros
|
||||||
|
value: "NULL"
|
||||||
27
.gitea/workflows/build.yaml
Normal file
27
.gitea/workflows/build.yaml
Normal file
@@ -0,0 +1,27 @@
|
|||||||
|
name: Build ptprnt
|
||||||
|
on: [push]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Starting action...
|
||||||
|
run: echo "Branch ${{ gitea.ref }} will be built for project ${{ gitea.repository }}."
|
||||||
|
- name: Checkout branch
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Update package cache
|
||||||
|
run: apt-get update
|
||||||
|
- name: install meson
|
||||||
|
run: apt-get -yq install meson
|
||||||
|
- name: Install build dependencies
|
||||||
|
run: apt-get -yq install libusb-1.0-0-dev libspdlog-dev libpango1.0-dev libcairo2-dev gcovr
|
||||||
|
- name: setup builddir
|
||||||
|
run: meson setup builddir -Db_coverage=true
|
||||||
|
- name: build all targets
|
||||||
|
run: ninja -C builddir
|
||||||
|
- name: run unit tests
|
||||||
|
run: ninja -C builddir test
|
||||||
|
- name: calculate coverage
|
||||||
|
run: ninja -C builddir coverage-text
|
||||||
|
- name: Coverage report
|
||||||
|
run: cat ./builddir/meson-logs/coverage.txt
|
||||||
10
README.md
10
README.md
@@ -12,6 +12,16 @@ This project requires:
|
|||||||
- gtest (optional, for testing, will be installed by meson)
|
- gtest (optional, for testing, will be installed by meson)
|
||||||
- gcov (optional, for coverage reports)
|
- gcov (optional, for coverage reports)
|
||||||
|
|
||||||
|
Install dependencies on Arch Linux
|
||||||
|
``` bash
|
||||||
|
pacman -S libusb spdlog pango cairo meson gcovr
|
||||||
|
```
|
||||||
|
|
||||||
|
Install dependencies on Debian/Ubuntu
|
||||||
|
``` bash
|
||||||
|
apt-get install libusb-1.0-0-dev libspdlog-dev libpango1.0-dev libcairo2-dev meson gcovr
|
||||||
|
```
|
||||||
|
|
||||||
## Build
|
## Build
|
||||||
|
|
||||||
Clone the repository and simply let meson do the heavy lifting.
|
Clone the repository and simply let meson do the heavy lifting.
|
||||||
|
|||||||
@@ -41,8 +41,6 @@
|
|||||||
|
|
||||||
namespace ptprnt::printer {
|
namespace ptprnt::printer {
|
||||||
|
|
||||||
P700Printer::P700Printer() {}
|
|
||||||
|
|
||||||
P700Printer::~P700Printer() {
|
P700Printer::~P700Printer() {
|
||||||
detachUsbDevice();
|
detachUsbDevice();
|
||||||
if (mUsbHndl) {
|
if (mUsbHndl) {
|
||||||
|
|||||||
@@ -33,12 +33,14 @@ namespace ptprnt::printer {
|
|||||||
|
|
||||||
class P700Printer : public ::ptprnt::IPrinterDriver {
|
class P700Printer : public ::ptprnt::IPrinterDriver {
|
||||||
public:
|
public:
|
||||||
P700Printer();
|
P700Printer() = default;
|
||||||
~P700Printer();
|
~P700Printer();
|
||||||
|
|
||||||
// delete copy ctor and assignment
|
// delete copy ctor and assignment
|
||||||
P700Printer(const P700Printer&) = delete;
|
P700Printer(const P700Printer&) = default;
|
||||||
P700Printer& operator=(P700Printer&) = delete;
|
P700Printer& operator=(const P700Printer&) = default;
|
||||||
|
P700Printer(P700Printer&&) = default;
|
||||||
|
P700Printer& operator=(P700Printer&&) = default;
|
||||||
|
|
||||||
// IPrinterDriver
|
// IPrinterDriver
|
||||||
const std::string_view getDriverName() override;
|
const std::string_view getDriverName() override;
|
||||||
|
|||||||
@@ -76,8 +76,6 @@ std::optional<std::vector<T>> Bitmap<T>::getCol(uint16_t col) {
|
|||||||
auto it = std::next(mPixels.begin(), col);
|
auto it = std::next(mPixels.begin(), col);
|
||||||
|
|
||||||
for (auto& colElement : colPixels) {
|
for (auto& colElement : colPixels) {
|
||||||
int offset = std::distance(mPixels.begin(), it);
|
|
||||||
//spdlog::debug("Distance {}: {}", offset, *it);
|
|
||||||
colElement = *it;
|
colElement = *it;
|
||||||
std::advance(it, mWidth);
|
std::advance(it, mWidth);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user