X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FEvents%2FEvents_Error.h;h=b344c6e36f9a3319939a1d351e4247158a9d9d27;hb=51f9a2d4ddb07cb536d1bfef694995b81e4079af;hp=f3c7f8024f84707aa9f0b7fa502414112fad3b1a;hpb=8dc74f82810d5f597b78633b457efb0ef4f89f9f;p=modules%2Fshaper.git diff --git a/src/Events/Events_Error.h b/src/Events/Events_Error.h index f3c7f8024..b344c6e36 100644 --- a/src/Events/Events_Error.h +++ b/src/Events/Events_Error.h @@ -1,3 +1,5 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D + /* * Events_Error.h * @@ -13,20 +15,35 @@ #include -class EVENTS_EXPORT Events_Error : public Events_Message +/**\class Events_Error + * \ingroup EventsLoop + * \brief An error message event. + * + * Is generated by any algorithm or GUI of the application to inform the user about + * the problem. In GUI mode all such errors are collected in the message log window. + */ +class Events_Error : public Events_Message { - char* myDescription; ///< pointer to the description of the error - - public: - virtual ~Events_Error(); - - static Events_ID errorID(); - char* description() const; - static void send(char* theDescription, const void* theSender = 0); - static void send(std::string theDescription, const void* theSender = 0); - - protected: - Events_Error(char* theDescription, const void* theSender = 0); + std::string myDescription; ///< the description of the error + +public: + /// default destructor + EVENTS_EXPORT virtual ~Events_Error(); + + /// Identifier of this event (one for all errors) + EVENTS_EXPORT static Events_ID errorID(); + /// Specific error string + EVENTS_EXPORT const char* description() const; + /// Allows to send an error quickly: it creates and sends the error object automatically + EVENTS_EXPORT static void send(const std::string& theDescription, const void* theSender = 0); + + /// Throws a C++ exception about using an empty AIS object + /// \theDescription an exception information + EVENTS_EXPORT static void throwException(const std::string& theDescription); + +protected: + /// Default constructor. Use "send" message for generation an error. + EVENTS_EXPORT Events_Error(const std::string& theDescription, const void* theSender = 0); }; #endif /* EVENTS_ERROR_H_ */