comparison vamp-client/ProcessQtTransport.h @ 111:d74dfc11927c

OSX build fixes and logic
author Chris Cannam <cannam@all-day-breakfast.com>
date Tue, 25 Oct 2016 14:48:56 +0100
parents 247d8d533a9c
children ac4a9518e1cc
comparison
equal deleted inserted replaced
110:535ee33eb8b3 111:d74dfc11927c
1 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
2
2 #ifndef PIPER_PROCESS_QT_TRANSPORT_H 3 #ifndef PIPER_PROCESS_QT_TRANSPORT_H
3 #define PIPER_PROCESS_QT_TRANSPORT_H 4 #define PIPER_PROCESS_QT_TRANSPORT_H
4 5
5 #include "SynchronousTransport.h" 6 #include "SynchronousTransport.h"
6 7
29 m_process = new QProcess(); 30 m_process = new QProcess();
30 m_process->setReadChannel(QProcess::StandardOutput); 31 m_process->setReadChannel(QProcess::StandardOutput);
31 m_process->setProcessChannelMode(QProcess::ForwardedErrorChannel); 32 m_process->setProcessChannelMode(QProcess::ForwardedErrorChannel);
32 m_process->start(QString::fromStdString(processName)); 33 m_process->start(QString::fromStdString(processName));
33 if (!m_process->waitForStarted()) { 34 if (!m_process->waitForStarted()) {
34 std::cerr << "server failed to start" << std::endl; 35 QProcess::ProcessError err = m_process->error();
36 if (err == QProcess::FailedToStart) {
37 std::cerr << "Unable to start server process " << processName
38 << std::endl;
39 } else if (err == QProcess::Crashed) {
40 std::cerr << "Server process " << processName
41 << " crashed on startup" << std::endl;
42 } else {
43 std::cerr << "Server process " << processName
44 << " failed on startup with error code "
45 << err << std::endl;
46 }
35 delete m_process; 47 delete m_process;
36 m_process = nullptr; 48 m_process = nullptr;
37 } 49 }
38 } 50 }
39 51
49 delete m_process; 61 delete m_process;
50 } 62 }
51 } 63 }
52 64
53 void 65 void
54 setCompletenessChecker(MessageCompletenessChecker *checker) { 66 setCompletenessChecker(MessageCompletenessChecker *checker) override {
55 //!!! ownership? 67 //!!! ownership?
56 m_completenessChecker = checker; 68 m_completenessChecker = checker;
57 } 69 }
58 70
59 bool 71 bool