comparison vamp-client/SynchronousTransport.h @ 121:56e537a7bb99

Error handling
author Chris Cannam <c.cannam@qmul.ac.uk>
date Thu, 27 Oct 2016 14:01:35 +0100
parents ff3fd8d1b2dc
children 2004ec2b653e
comparison
equal deleted inserted replaced
120:88ecaf8b163a 121:56e537a7bb99
36 #ifndef PIPER_SYNCHRONOUS_TRANSPORT_H 36 #ifndef PIPER_SYNCHRONOUS_TRANSPORT_H
37 #define PIPER_SYNCHRONOUS_TRANSPORT_H 37 #define PIPER_SYNCHRONOUS_TRANSPORT_H
38 38
39 #include <vector> 39 #include <vector>
40 #include <cstdlib> 40 #include <cstdlib>
41 #include <stdexcept>
41 42
42 namespace piper_vamp { 43 namespace piper_vamp {
43 namespace client { 44 namespace client {
44 45
45 class MessageCompletenessChecker // interface 46 class MessageCompletenessChecker // interface
46 { 47 {
47 public: 48 public:
48 virtual ~MessageCompletenessChecker() = default; 49 virtual ~MessageCompletenessChecker() = default;
49 50
50 virtual bool isComplete(const std::vector<char> &message) const = 0; 51 virtual bool isComplete(const std::vector<char> &message) const = 0;
52 };
53
54 class ServerCrashed : public std::runtime_error
55 {
56 public:
57 ServerCrashed() : std::runtime_error("Piper server exited unexpectedly") {}
51 }; 58 };
52 59
53 class SynchronousTransport // interface 60 class SynchronousTransport // interface
54 { 61 {
55 public: 62 public: