Skip to content
Snippets Groups Projects
Commit d7fee701 authored by Daniel Müller's avatar Daniel Müller
Browse files

Merge branch 'development' into 'master'

Merge development

See merge request !1
parents 39d5d3ff 8e100f18
No related branches found
No related tags found
1 merge request!1Merge development
Showing
with 49 additions and 312 deletions
# Output directories
/bin-Debug/
/bin-Release/
/build-Debug/
/build-Release/
# Backup files
/CodeBackup_d.lst
/CodeBackup_r+.lst
/CodeBackup_r-.lst
/CreateCodeBackup.cmd
# Miscellaneous files
/Grinder.smproj
/Grinder.tdl
/Data on VM.lnk
......@@ -7,7 +7,7 @@ QT += core gui widgets
TARGET = Grinder
TEMPLATE = app
CONFIG += c++14
CONFIG += c++17
DEFINES += QT_DEPRECATED_WARNINGS
QMAKE_CXXFLAGS += "-Wno-cpp"
......@@ -322,8 +322,6 @@ SOURCES += \
ui/image/tools/WandSelectionTool.cpp \
ui/image/ImageEditorSceneLayers.cpp \
ui/image/ImageEditorSceneLayer.cpp \
project/exporters/HDF5Exporter.cpp \
ui/dlg/HDF5ExportDialog.cpp \
image/ImageTagsBitmap.cpp \
core/longop/LongOperation.cpp \
core/longop/LongOperationsPool.cpp \
......@@ -344,61 +342,9 @@ SOURCES += \
ui/task/ConfigureTaskDialog.cpp \
ui/task/ConfigureTaskWidgetBase.cpp \
ui/task/tasks/GenericTaskWidget.cpp \
ml/barista/BaristaMessage.cpp \
ml/barista/tasks/BaristaTrainingTask.cpp \
ml/barista/tasks/BaristaInferenceTask.cpp \
ui/widgets/project/LabelsComboBox.cpp \
ui/widgets/project/ImageReferencesCheckListWidget.cpp \
network/cmd/tasks/CommandInterfaceTask.cpp \
ui/cmd/tasks/CommandInterfaceTaskWidget.cpp \
network/cmd/tasks/CommandInterfaceTestTask.cpp \
ui/cmd/tasks/CommandInterfaceTestTaskWidget.cpp \
network/cmd/CommandInterfaceMessage.cpp \
network/cmd/msgs/HelloMessage.cpp \
network/cmd/CommandInterfaceClientHandler.cpp \
network/cmd/CommandInterfaceServerHandler.cpp \
network/cmd/msgs/GrinderInfoMessage.cpp \
network/cmd/msgs/RequestFilenamesMessage.cpp \
network/cmd/msgs/FilenamesMessage.cpp \
network/cmd/msgs/RequestImageDataMessage.cpp \
network/cmd/msgs/RequestItemsDataMessage.cpp \
network/cmd/msgs/RequestItemsMessage.cpp \
network/cmd/msgs/RequestTagsMessage.cpp \
network/cmd/msgs/ImageDataMessage.cpp \
network/cmd/msgs/ItemsDataMessage.cpp \
network/cmd/msgs/ItemsMessage.cpp \
network/cmd/msgs/TagsMessage.cpp \
network/cmd/msgs/CreateItemsMessage.cpp \
network/cmd/msgs/ItemsCreatedMessage.cpp \
network/cmd/msgs/StatusMessage.cpp \
network/cmd/msgs/AckMessage.cpp \
network/cmd/msgs/ControlMessage.cpp \
network/cmd/msgs/CreateLayerMessage.cpp \
network/cmd/msgs/LayerCreatedMessage.cpp \
network/cmd/msgs/RemoveLayerMessage.cpp \
network/cmd/msgs/LayerRemovedMessage.cpp \
network/cmd/msgs/LayerNamesMessage.cpp \
network/cmd/msgs/RequestLayerNamesMessage.cpp \
core/data/ExternalDataManager.cpp \
ml/barista/BaristaNetworkInfo.cpp \
ml/barista/BaristaExceptions.cpp \
ml/barista/BaristaNetwork.cpp \
ml/barista/BaristaNetworkPool.cpp \
ui/barista/widgets/BaristaNetworksComboBox.cpp \
ml/barista/BaristaNetworkContext.cpp \
network/NetworkExceptions.cpp \
network/NetworkSocket.cpp \
network/cmd/CommandInterface.cpp \
ml/barista/BaristaInterface.cpp \
ml/barista/BaristaHandler.cpp \
ml/barista/msgs/BaristaShutdownMessage.cpp \
ml/barista/msgs/BaristaSetLibraryMessage.cpp \
ml/barista/msgs/BaristaStartTrainingMessage.cpp \
ml/barista/msgs/BaristaUpdateTrainingMessage.cpp \
ml/barista/msgs/BaristaFinishTrainingMessage.cpp \
ml/barista/msgs/BaristaLoadNetworkMessage.cpp \
ml/barista/msgs/BaristaInferImageMessage.cpp \
ml/barista/msgs/BaristaAddressMessage.cpp \
ui/widgets/BaseListItemDelegate.cpp \
ui/widgets/BaseListItem.cpp \
ui/image/ImageTagsListItemDelegate.cpp \
......@@ -439,44 +385,10 @@ SOURCES += \
ui/properties/editors/PathPropertyEditor.cpp \
ui/dlg/BrowseDialog.cpp \
engine/data/DataType.cpp \
ml/MachineLearningMethodBase.cpp \
ml/MachineLearningConfiguration.cpp \
ml/barista/BaristaClassifierConfiguration.cpp \
ml/MachineLearningExceptions.cpp \
ml/barista/BaristaClassifierTaskSpawner.cpp \
ml/barista/BaristaClassifierMethod.cpp \
ml/MachineLearningTaskSpawnerBase.cpp \
ml/barista/blocks/BaristaClassifierBlock.cpp \
ml/barista/properties/BaristaNetworkProperty.cpp \
ui/barista/editors/BaristaNetworkPropertyEditor.cpp \
ml/properties/MachineLearningStateProperty.cpp \
ui/ml/editors/MachineLearningStatePropertyEditor.cpp \
ml/blocks/MachineLearningBlock.cpp \
ml/blocks/TrainingBlock.cpp \
ml/processors/TrainingProcessor.cpp \
project/exporters/HDF5Export.cpp \
ml/tasks/MachineLearningTask.cpp \
engine/processors/ImageTagsProcessor.cpp \
ml/blocks/InferenceBlock.cpp \
ml/processors/InferenceProcessor.cpp \
util/QtUtils.cpp \
pipeline/BlockDataCache.cpp \
ml/blocks/InferenceBlockResultsCache.cpp \
ml/external/ExternalClassifierConfiguration.cpp \
ml/external/tasks/ExternalClassifierTrainingTask.cpp \
ml/external/tasks/ExternalClassifierInferenceTask.cpp \
ml/rf/RandomForestClassifierConfiguration.cpp \
ml/rf/RandomForestClassifierMethod.cpp \
ml/rf/blocks/RandomForestClassifierBlock.cpp \
ml/external/msgs/StartTrainingMessage.cpp \
ml/external/msgs/FinishTrainingMessage.cpp \
ml/external/msgs/StartInferenceMessage.cpp \
ml/external/msgs/InferImageMessage.cpp \
ml/properties/TilingTypeProperty.cpp \
cv/MatrixTiler.cpp \
ml/tasks/InferenceTileQueue.cpp \
ml/tasks/MachineLearningTrainingTask.cpp \
ml/tasks/MachineLearningInferenceTask.cpp \
ui/image/LayerSettingsDialog.cpp \
ui/image/ImageEditorUndoStack.cpp \
ui/image/commands/CreateDraftItemUndoCommand.cpp \
......@@ -489,13 +401,6 @@ SOURCES += \
ui/image/commands/RemoveLayerUndoCommand.cpp \
pipeline/blocks/MaskInputBlock.cpp \
engine/processors/MaskInputProcessor.cpp \
ml/rf/properties/MaxFeaturesTypeProperty.cpp \
ml/rf/RandomForestFeatures.cpp \
ml/rf/properties/RandomForestFeaturesProperty.cpp \
ui/ml/editors/rf/RandomForestFeaturesPropertyEditor.cpp \
ui/ml/rf/RandomForestFeaturesDialog.cpp \
ml/blocks/MergeInferenceBlock.cpp \
ml/processors/MergeInferenceProcessor.cpp \
engine/EngineUtils.cpp \
ui/image/PasteNodesDialog.cpp
......@@ -862,8 +767,6 @@ HEADERS += \
ui/image/tools/WandSelectionTool.h \
ui/image/ImageEditorSceneLayers.h \
ui/image/ImageEditorSceneLayer.h \
project/exporters/HDF5Exporter.h \
ui/dlg/HDF5ExportDialog.h \
image/ImageTagsBitmap.h \
core/longop/LongOperation.h \
core/longop/LongOperationsPool.h \
......@@ -885,77 +788,11 @@ HEADERS += \
ui/task/ConfigureTaskWidget.h \
ui/task/ConfigureTaskWidget.impl.h \
ui/task/ConfigureTaskWidgetBase.h \
ml/barista/tasks/BaristaTask.h \
ui/task/tasks/GenericTaskWidget.h \
ml/barista/BaristaMessage.h \
ml/barista/tasks/BaristaTrainingTask.h \
ml/barista/tasks/BaristaInferenceTask.h \
ui/widgets/project/LabelsComboBox.h \
ui/widgets/project/ImageReferencesCheckListWidget.h \
network/cmd/tasks/CommandInterfaceTask.h \
ui/cmd/tasks/CommandInterfaceTaskWidget.h \
network/cmd/tasks/CommandInterfaceTestTask.h \
ui/cmd/tasks/CommandInterfaceTestTaskWidget.h \
network/cmd/CommandInterfaceMessage.h \
network/cmd/CommandInterfaceHandler.h \
network/cmd/tasks/CommandInterfaceTaskBase.h \
network/cmd/msgs/HelloMessage.h \
network/cmd/CommandInterfaceHandler.impl.h \
network/cmd/CommandInterfaceClientHandler.h \
network/cmd/CommandInterfaceServerHandler.h \
network/cmd/msgs/GrinderInfoMessage.h \
network/cmd/tasks/CommandInterfaceTaskBase.impl.h \
network/cmd/msgs/RequestFilenamesMessage.h \
network/cmd/msgs/FilenamesMessage.h \
network/cmd/msgs/RequestImageDataMessage.h \
network/cmd/msgs/RequestItemsDataMessage.h \
network/cmd/msgs/RequestItemsMessage.h \
network/cmd/msgs/RequestTagsMessage.h \
network/cmd/msgs/ImageDataMessage.h \
network/cmd/msgs/ItemsDataMessage.h \
network/cmd/msgs/ItemsMessage.h \
network/cmd/msgs/TagsMessage.h \
network/cmd/msgs/CreateItemsMessage.h \
network/cmd/msgs/ItemsCreatedMessage.h \
network/cmd/msgs/StatusMessage.h \
network/cmd/msgs/AckMessage.h \
network/cmd/msgs/ControlMessage.h \
network/cmd/msgs/CreateLayerMessage.h \
network/cmd/msgs/LayerCreatedMessage.h \
network/cmd/msgs/RemoveLayerMessage.h \
network/cmd/msgs/LayerRemovedMessage.h \
network/cmd/msgs/LayerNamesMessage.h \
network/cmd/msgs/RequestLayerNamesMessage.h \
ui/widgets/project/ImageReferencesCheckListWidget.h \
res/Filenames.h \
core/data/ExternalDataManager.h \
ml/barista/BaristaNetworkInfo.h \
ml/barista/BaristaExceptions.h \
ml/barista/BaristaNetwork.h \
ml/barista/BaristaNetworkPool.h \
ui/barista/widgets/BaristaNetworksComboBox.h \
ml/barista/BaristaNetworkContext.h \
network/NetworkExceptions.h \
network/NetworkSocket.h \
network/NetworkMessage.h \
network/NetworkMessageHandler.h \
network/NetworkMessageHandler.impl.h \
network/NetworkMessage.impl.h \
network/NetworkMessageHandlerBase.h \
network/NetworkMessageHandlerBase.impl.h \
network/cmd/CommandInterface.h \
network/NetworkCore.h \
network/NetworkCore.impl.h \
ml/barista/BaristaInterface.h \
ml/barista/BaristaHandler.h \
ml/barista/msgs/BaristaShutdownMessage.h \
ml/barista/msgs/BaristaSetLibraryMessage.h \
ml/barista/msgs/BaristaStartTrainingMessage.h \
ml/barista/msgs/BaristaUpdateTrainingMessage.h \
ml/barista/msgs/BaristaFinishTrainingMessage.h \
ml/barista/msgs/BaristaLoadNetworkMessage.h \
ml/barista/msgs/BaristaInferImageMessage.h \
ml/barista/msgs/BaristaAddressMessage.h \
ml/barista/tasks/BaristaTask.impl.h \
core/data/ExternalDataManager.h \
ui/widgets/BaseListItemDelegate.h \
ui/widgets/BaseListItem.h \
ui/image/ImageTagsListItemDelegate.h \
......@@ -999,66 +836,13 @@ HEADERS += \
ui/properties/editors/PathPropertyEditor.h \
ui/dlg/BrowseDialog.h \
engine/data/DataType.h \
ml/MachineLearningMethod.h \
ml/MachineLearningMethod.impl.h \
ml/MachineLearningMethodBase.h \
ml/MachineLearningConfiguration.h \
ml/barista/BaristaClassifierConfiguration.h \
ml/MachineLearningExceptions.h \
ml/barista/BaristaClassifierTaskSpawner.h \
ml/barista/BaristaClassifierMethod.h \
ml/MachineLearningTaskSpawnerBase.h \
ml/MachineLearningTaskSpawner.h \
ml/MachineLearningTaskSpawner.impl.h \
ml/barista/blocks/BaristaClassifierBlock.h \
ml/barista/properties/BaristaNetworkProperty.h \
ui/barista/editors/BaristaNetworkPropertyEditor.h \
ml/properties/MachineLearningStateProperty.h \
ui/ml/editors/MachineLearningStatePropertyEditor.h \
ml/blocks/MachineLearningMethodBlock.h \
ml/blocks/MachineLearningMethodBlock.impl.h \
ml/blocks/MachineLearningBlock.h \
ml/blocks/TrainingBlock.h \
ml/processors/TrainingProcessor.h \
ml/processors/MachineLearningMethodProcessor.h \
ml/processors/MachineLearningMethodProcessor.impl.h \
ml/processors/MachineLearningProcessor.h \
ml/processors/MachineLearningProcessor.impl.h \
ml/barista/BaristaClassifierTaskSpawner.impl.h \
project/exporters/HDF5Export.h \
pipeline/tasks/PipelineTask.h \
ml/tasks/MachineLearningTask.h \
engine/processors/ImageTagsProcessor.h \
ml/blocks/InferenceBlock.h \
ml/processors/InferenceProcessor.h \
util/QtUtils.h \
pipeline/BlockDataCache.h \
ml/blocks/InferenceBlockResultsCache.h \
pipeline/processors/PipelineTaskProcessor.h \
pipeline/processors/PipelineTaskProcessor.impl.h \
ml/external/ExternalClassifierConfiguration.h \
ml/external/ExternalClassifierMethod.h \
ml/external/ExternalClassifierTaskSpawner.h \
ml/external/ExternalClassifierTaskSpawner.impl.h \
ml/external/tasks/ExternalClassifierTask.h \
ml/external/tasks/ExternalClassifierTask.impl.h \
ml/external/tasks/ExternalClassifierTrainingTask.h \
ml/external/tasks/ExternalClassifierInferenceTask.h \
ml/rf/RandomForestClassifierConfiguration.h \
ml/rf/RandomForestClassifierMethod.h \
ml/rf/blocks/RandomForestClassifierBlock.h \
ml/external/blocks/ExternalClassifierBlock.h \
ml/external/blocks/ExternalClassifierBlock.impl.h \
ml/external/msgs/StartTrainingMessage.h \
ml/external/msgs/FinishTrainingMessage.h \
ml/external/msgs/StartInferenceMessage.h \
ml/external/msgs/InferImageMessage.h \
ml/properties/TilingTypeProperty.h \
ml/MLTypes.h \
cv/MatrixTiler.h \
ml/tasks/InferenceTileQueue.h \
ml/tasks/MachineLearningTrainingTask.h \
ml/tasks/MachineLearningInferenceTask.h \
ui/image/LayerSettingsDialog.h \
ui/image/ImageEditorUndoCommand.h \
ui/image/ImageEditorUndoStack.h \
......@@ -1080,13 +864,6 @@ HEADERS += \
util/MathUtils.impl.h \
pipeline/blocks/MaskInputBlock.h \
engine/processors/MaskInputProcessor.h \
ml/rf/properties/MaxFeaturesTypeProperty.h \
ml/rf/RandomForestFeatures.h \
ml/rf/properties/RandomForestFeaturesProperty.h \
ui/ml/editors/rf/RandomForestFeaturesPropertyEditor.h \
ui/ml/rf/RandomForestFeaturesDialog.h \
ml/blocks/MergeInferenceBlock.h \
ml/processors/MergeInferenceProcessor.h \
engine/EngineUtils.h \
ui/image/PasteNodesDialog.h
......@@ -1098,18 +875,14 @@ FORMS += \
ui/dlg/CheckListDialog.ui \
ui/image/ImageTagsDialog.ui \
ui/dlg/SplitConnectionDialog.ui \
ui/dlg/HDF5ExportDialog.ui \
ui/longop/LongOperationsDialog.ui \
ui/longop/LongOperationWidget.ui \
ui/task/TaskWidget.ui \
ui/dlg/TextViewerDialog.ui \
ui/task/ConfigureTaskDialog.ui \
ui/task/tasks/GenericTaskWidget.ui \
ui/cmd/tasks/CommandInterfaceTaskWidget.ui \
ui/cmd/tasks/CommandInterfaceTestTaskWidget.ui \
ui/dlg/BrowseDialog.ui \
ui/image/LayerSettingsDialog.ui \
ui/ml/rf/RandomForestFeaturesDialog.ui \
ui/image/PasteNodesDialog.ui
RESOURCES += \
......@@ -1117,3 +890,4 @@ RESOURCES += \
OTHER_FILES += \
res/Grinder.rc
......@@ -15,11 +15,11 @@ linux {
}
win32 {
LIBS += libopencv_core340
LIBS += libopencv_imgcodecs340
LIBS += libopencv_imgproc340
LIBS += libopencv_features2d340
LIBS += libopencv_highgui340
LIBS += libopencv_core451
LIBS += libopencv_imgcodecs451
LIBS += libopencv_imgproc451
LIBS += libopencv_features2d451
LIBS += libopencv_highgui451
}
linux|macx {
......@@ -29,43 +29,3 @@ linux|macx {
LIBS += -lopencv_features2d
LIBS += -lopencv_highgui
}
# HDF5
win32 {
INCLUDEPATH += F:\Lib\HDF5\bin-Release\include
DEPENDPATH += F:\Lib\HDF5\bin-Release\lib
LIBS += -LF:\Lib\HDF5\bin-Release\lib
}
linux {
INCLUDEPATH += /usr/include/hdf5/serial
DEPENDPATH += /usr/lib/x86_64-linux-gnu/hdf5/serial
LIBS += -L/usr/lib/x86_64-linux-gnu/hdf5/serial
}
win32 {
LIBS += libhdf5
LIBS += libhdf5_cpp
}
linux {
LIBS += -lhdf5
LIBS += -lhdf5_cpp
}
# ZeroMQ
win32 {
INCLUDEPATH += F:\Lib\ZeroMQ\distrib\include
DEPENDPATH += F:\Lib\ZeroMQ\distrib\lib
LIBS += -LF:\Lib\ZeroMQ\distrib\lib
}
win32 {
LIBS += libzmq
}
linux {
LIBS += -lzmq
}
......@@ -10,14 +10,14 @@
#define GRNDR_INFO_TITLE "Grinder"
#define GRNDR_INFO_COPYRIGHT "Copyright (c) WWU Muenster"
#define GRNDR_INFO_DATE "26.02.2020"
#define GRNDR_INFO_DATE "03.03.2021"
#define GRNDR_INFO_COMPANY "WWU Muenster"
#define GRNDR_INFO_WEBSITE "http://www.uni-muenster.de"
#define GRNDR_VERSION_MAJOR 0
#define GRNDR_VERSION_MINOR 17
#define GRNDR_VERSION_MAJOR 1
#define GRNDR_VERSION_MINOR 0
#define GRNDR_VERSION_REVISION 0
#define GRNDR_VERSION_BUILD 433
#define GRNDR_VERSION_BUILD 439
namespace grndr
{
......
......@@ -19,12 +19,13 @@ QString Range<ValType>::toString() const
template <typename ValType>
void Range<ValType>::fromString(const QString& str)
{
QRegExp re{"(-?\\d+)(--?\\d+)?"};
QRegularExpression re{QRegularExpression::anchoredPattern("(-?\\d+)(--?\\d+)?")};
if (re.exactMatch(str.trimmed()))
auto match = re.match(str.trimmed());
if (match.hasMatch())
{
auto first = re.cap(1);
auto second = re.cap(2);
auto first = match.captured(0);
auto second = match.captured(1);
if (!second.isEmpty())
second.remove(0, 1);
......
......@@ -204,7 +204,7 @@ void RangeMap<ValType>::fromString(const QString& str)
{
_rangeMap.clear();
for (auto rangeVector : str.split("|", QString::SkipEmptyParts))
for (auto rangeVector : str.split("|", Qt::SkipEmptyParts))
{
QStringList tokens = rangeVector.split(":");
......
......@@ -184,7 +184,7 @@ void RangeVector<ValType>::fromString(const QString& str)
{
_ranges.clear();
for (auto range : str.split(";", QString::SkipEmptyParts))
for (auto range : str.split(";", Qt::SkipEmptyParts))
_ranges.emplace(range_type{range});
}
......
......@@ -138,9 +138,12 @@ std::vector<JsonSettingsCodec::Token> JsonSettingsCodec::readJsonDocument(QTextS
// Set up the various regular expressions for parsing the Json document
struct TokenizerEntry
{
TokenizerEntry(QString regExp, TokenType type, bool greedy = true) : re{"^" + regExp}, tokenType{type} { re.setMinimal(!greedy); }
TokenizerEntry(QString regExp, TokenType type, bool greedy = true) : re{"^" + regExp}, tokenType{type}
{
if (!greedy) re.setPatternOptions(re.patternOptions()|QRegularExpression::InvertedGreedinessOption);
}
QRegExp re;
QRegularExpression re;
TokenType tokenType{TokenType::Undefined};
};
......@@ -173,11 +176,10 @@ std::vector<JsonSettingsCodec::Token> JsonSettingsCodec::readJsonDocument(QTextS
// Try each tokenizer for a match; if none was found, the Json document has an invalid syntax
for (const auto& tokenizer : tokenizers)
{
auto indexFound = tokenizer.re.indexIn(line);
if (indexFound == 0) // Matches must begin at the start of the line
QRegularExpressionMatch match;
if (line.indexOf(tokenizer.re, 0, &match) == 0) // Matches must begin at the start of the line
{
int matchedLength = tokenizer.re.matchedLength();
int matchedLength = match.capturedLength();
QString matchedString = line.left(matchedLength);
if (tokenizer.tokenType == TokenType::String)
......
......@@ -60,7 +60,7 @@ SettingsContainer* SettingsContainer::createChildEx(QString name, bool unique, b
name = QString{"child%1"}.arg(_childContainers.size());
// Support dot-separated paths
auto nameTokens = name.split('.', QString::SkipEmptyParts);
auto nameTokens = name.split('.', Qt::SkipEmptyParts);
name = nameTokens.takeFirst();
SettingsContainer* childContainer = unique ? child(name) : nullptr;
......@@ -93,7 +93,7 @@ void SettingsContainer::removeChildren(QString name)
QVariant& SettingsContainer::value(QString name, const QVariant& defaultValue)
{
// Support dot-separated paths
auto nameTokens = name.split('.', QString::SkipEmptyParts);
auto nameTokens = name.split('.', Qt::SkipEmptyParts);
name = nameTokens.takeLast();
SettingsContainer* container = this;
......@@ -111,7 +111,7 @@ QVariant& SettingsContainer::value(QString name, const QVariant& defaultValue)
QVariant SettingsContainer::value(QString name, const QVariant& defaultValue) const
{
// Support dot-separated paths
auto nameTokens = name.split('.', QString::SkipEmptyParts);
auto nameTokens = name.split('.', Qt::SkipEmptyParts);
name = nameTokens.takeLast();
const SettingsContainer* container = this;
......@@ -129,7 +129,7 @@ QVariant SettingsContainer::value(QString name, const QVariant& defaultValue) co
bool SettingsContainer::contains(QString name) const
{
// Support dot-separated paths
auto nameTokens = name.split('.', QString::SkipEmptyParts);
auto nameTokens = name.split('.', Qt::SkipEmptyParts);
name = nameTokens.takeLast();
const SettingsContainer* container = this;
......@@ -157,7 +157,7 @@ bool SettingsContainer::contains(QStringList names) const
void SettingsContainer::removeValue(QString name)
{
// Support dot-separated paths
auto nameTokens = name.split('.', QString::SkipEmptyParts);
auto nameTokens = name.split('.', Qt::SkipEmptyParts);
name = nameTokens.takeLast();
SettingsContainer* container = this;
......
......@@ -23,7 +23,7 @@ template<typename DataType>
const std::vector<DataType> SettingsContainer::_children(QString name) const
{
// Support dot-separated paths
auto nameTokens = name.split('.', QString::SkipEmptyParts);
auto nameTokens = name.split('.', Qt::SkipEmptyParts);
if (!nameTokens.isEmpty())
name = nameTokens.takeFirst();
......
......@@ -33,7 +33,7 @@ namespace grndr
void processCache() const;
public:
QFileInfo resolveFile(QString file) const { return _cacheDir.filePath(file); }
QFileInfo resolveFile(QString file) const { return QFileInfo{_cacheDir.filePath(file)}; }
public:
unsigned long long getMemoryLimit() const { return _memoryLimit; }
......
......@@ -19,7 +19,6 @@ void ExternalDataManager::initManager(QString appDir)
// Prepare all external data pools
_pipelineTemplates.initTemplates();
_baristaNetworkPool.loadNetworks();
}
void ExternalDataManager::shutdownManager()
......
......@@ -7,7 +7,6 @@
#define EXTERNALDATAMANAGER_H
#include "pipeline/PipelineTemplates.h"
#include "ml/barista/BaristaNetworkPool.h"
namespace grndr
{
......@@ -18,7 +17,7 @@ namespace grndr
void shutdownManager();
public:
QFileInfo resolveFile(QString file) const { return _dataDir.filePath(file); }
QFileInfo resolveFile(QString file) const { return QFileInfo{_dataDir.filePath(file)}; }
std::vector<QFileInfo> resolveFiles(QString dir, QString filePattern = "*.*") const;
std::vector<QFileInfo> resolveSubFiles(QString dir, QString filePattern = "*.*") const;
......@@ -28,15 +27,12 @@ namespace grndr
public:
PipelineTemplates& pipelineTemplates() { return _pipelineTemplates; }
const PipelineTemplates& pipelineTemplates() const { return _pipelineTemplates; }
BaristaNetworkPool& baristaNetworkPool() { return _baristaNetworkPool; }
const BaristaNetworkPool& baristaNetworkPool() const { return _baristaNetworkPool; }
private:
QDir _dataDir;
private:
PipelineTemplates _pipelineTemplates;
BaristaNetworkPool _baristaNetworkPool;
};
}
......
......@@ -39,7 +39,7 @@ LayerPixelsData::Selection EdgesWandAlgorithm::execute(QPoint seed, const Layer&
float colorStep = 255.0f / contours.size();
for (unsigned int i = 0; i < contours.size(); ++i)
cv::drawContours(contourRegions, contours, i, cv::Scalar::all(std::lround((i + 1) * colorStep)), CV_FILLED);
cv::drawContours(contourRegions, contours, i, cv::Scalar::all(std::lround((i + 1) * colorStep)), cv::FILLED);
// Get the contour under the seed position
uint8_t edgeValue = contourRegions.at<uint8_t>(seed.y(), seed.x());
......
......@@ -17,7 +17,7 @@ LayerPixelsData::Selection WatershedWandAlgorithm::execute(QPoint seed, const La
// Create markers for the Watershed algorithm
cv::Mat markers = cv::Mat::zeros(layerSize.height(), layerSize.width(), CV_32SC1);
cv::circle(markers, cv::Point{seed.x(), seed.y()}, 3, cv::Scalar::all(255), CV_FILLED);
cv::circle(markers, cv::Point{seed.x(), seed.y()}, 3, cv::Scalar::all(255), cv::FILLED);
cv::circle(markers, cv::Point{0, 0}, 3, cv::Scalar::all(1), -1); // Extra marker to make Watershed work
// Use the Watershed algorithm to extract the clicked region
......
......@@ -27,7 +27,7 @@ void MaskInputProcessor::execute(EngineExecutionContext& ctx)
if (filename.isEmpty())
throwProcessorException("No mask filename pattern provided");
filename = EngineUtils::replaceImageFilenamePlaceholders(filename, imageReference->getImageFileName());
filename = EngineUtils::replaceImageFilenamePlaceholders(filename, QFileInfo{imageReference->getImageFileName()});
QDir imageDir = QFileInfo{imageReference->getImageFilePath()}.dir();
QFileInfo maskFile{imageDir, filename};
......
......@@ -50,7 +50,7 @@ QString SaveImageProcessor::prepareOutputFilename(const ImageReference* imageRef
if (filename.isEmpty())
throwProcessorException("No filename provided");
filename = EngineUtils::replaceImageFilenamePlaceholders(filename, imageRef->getImageFileName());
filename = EngineUtils::replaceImageFilenamePlaceholders(filename, QFileInfo{imageRef->getImageFileName()});
if (!_block->autoFormat()->getValue())
ext = _block->format()->getExtension();
......
......@@ -119,7 +119,7 @@ void DraftItemRenderer<ItemType>::renderDirectionArrow(QPainter* painter, QPoint
path.closeSubpath();
// Draw the arrow
painter->setRenderHints(QPainter::Antialiasing|QPainter::TextAntialiasing|QPainter::HighQualityAntialiasing|QPainter::SmoothPixmapTransform);
painter->setRenderHints(QPainter::Antialiasing|QPainter::TextAntialiasing|QPainter::SmoothPixmapTransform);
QPen penOuter = createStandardPen(_rendererStyle.directionArrowWidth + 1.0, Qt::RoundCap);
penOuter.setColor(_rendererStyle.directionArrowColor.darker());
......@@ -144,7 +144,7 @@ void DraftItemRenderer<ItemType>::renderImageTags(QPainter* painter, QPoint cent
if (!_draftItem->imageTagsAllotment()->object().allottedTags().empty())
{
painter->setRenderHints(QPainter::Antialiasing|QPainter::TextAntialiasing|QPainter::HighQualityAntialiasing|QPainter::SmoothPixmapTransform);
painter->setRenderHints(QPainter::Antialiasing|QPainter::TextAntialiasing|QPainter::SmoothPixmapTransform);
painter->setOpacity(_rendererStyle.imageTagsOpacity);
QPointF labelPos = centerPos + QPointF{0.0, (itemRect.height() / 2) + _rendererStyle.imageTagsMargin};
......
......@@ -63,7 +63,7 @@ void ImageTagsBitmap::renderDraftItems(const std::vector<DraftItem*>& draftItems
{
// Render using a painter
QPainter painter{&_renderingCanvas};
painter.setRenderHints(QPainter::Antialiasing|QPainter::TextAntialiasing|QPainter::HighQualityAntialiasing|QPainter::SmoothPixmapTransform, false);
painter.setRenderHints(QPainter::Antialiasing|QPainter::TextAntialiasing|QPainter::SmoothPixmapTransform, false);
for (const auto& draftItem : draftItems)
{
......
......@@ -7,6 +7,7 @@
#define ITEMRENDERER_H
#include <QPainter>
#include <QPainterPath>
#include <QPalette>
#include <memory>
#include <set>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment