• Main Page
  • Related Pages
  • Classes
  • Files
  • File List

src/client/Status.hh

00001 /*
00002  * Copyright Staffan Gimåker 2006-2010.
00003  *
00004  * ---
00005  *
00006  * Distributed under the Boost Software License, Version 1.0.
00007  * (See accompanying file LICENSE_1_0.txt or copy at
00008  * http://www.boost.org/LICENSE_1_0.txt)
00009  */
00010 
00011 #ifndef PEEKABOT_CLIENT_STATUS_HH_INCLUDED
00012 #define PEEKABOT_CLIENT_STATUS_HH_INCLUDED
00013 
00014 
00015 #include <string>
00016 #include <stdexcept>
00017 #include <boost/shared_ptr.hpp>
00018 
00019 #include "../Visibility.hh"
00020 #include "OperationStatus.hh"
00021 
00022 
00023 namespace peekabot
00024 {
00025     namespace client
00026     {
00036         class PEEKABOT_API Status
00037         {
00038         public:
00043             Status();
00044 
00045 
00053             Status(boost::shared_ptr<OperationStatus> status);
00054 
00055 
00056             virtual ~Status();
00057 
00058 
00059             Status &operator=(
00060                 boost::shared_ptr<OperationStatus> status);
00061 
00070             OperationOutcome get_outcome() const;
00071 
00080             bool has_completed() const;
00081 
00091             bool succeeded() const;
00092 
00106             bool failed() const;
00107 
00122             bool wait_until_completed() const;
00123 
00131             std::string get_error_message() const;
00132 
00133         private:
00141             boost::shared_ptr<OperationStatus> m_status;
00142         };
00143     }
00144 }
00145 
00146 
00147 #endif // PEEKABOT_CLIENT_STATUS_HH_INCLUDED

Generated on Sun Jan 30 2011 for peekabot by  doxygen 1.7.1