+
+KDMError::KDMError (string s, string d)
+ : runtime_error (String::compose ("%1 (%2)", s, d))
+ , _summary (s)
+ , _detail (d)
+{
+
+}
+
+GLError::GLError (char const * last, int e)
+ : runtime_error (String::compose("%1 failed %2", last, e))
+{
+
+}
+
+CopyError::CopyError (string m, optional<int> n)
+ : runtime_error (String::compose("%1%2", m, n ? String::compose(" (%1)", *n) : ""))
+ , _message (m)
+ , _number (n)
+{
+
+}
+
+CommunicationFailedError::CommunicationFailedError ()
+ : CopyError (_("Lost communication between main and writer processes"))
+{
+
+}
+
+VerifyError::VerifyError (string m, int n)
+ : runtime_error (String::compose("%1 (%2)", m, n))
+ , _message (m)
+ , _number (n)
+{
+
+}
+