41 #ifndef __WAREEXCEPTION_HPP__
42 #define __WAREEXCEPTION_HPP__
50 namespace openfluid {
namespace ware {
68 m_Source =
"unknown source";
70 m_FullMessage = m_Message;
72 m_FullMessage +=
" (sent by " + m_Sender;
74 m_FullMessage +=
" simulator";
76 m_FullMessage +=
" observer";
79 m_FullMessage +=
", from " + m_Source;
83 std::stringstream StrStream;
84 StrStream << m_TimeIndex;
85 m_FullMessage +=
", at time index #" + StrStream.str();
97 std::string& SourceStr)
99 SourceStr =
"unknown source";
132 const std::string& Source,
133 const std::string& Msg) :
134 openfluid::base::Exception(ID,Msg), m_WareType(WType), m_Stage(openfluid::base::SimulationStatus::UNKNOWN),
135 m_TimeIndex(0), m_IsTimeIndexed(false)
145 const std::string& Msg) :
146 openfluid::base::Exception(ID,Msg), m_WareType(WType), m_Stage(Stage), m_TimeIndex(0), m_IsTimeIndexed(false)
148 updateSourceInfo(WType,Stage,m_Source);
155 const std::string& Source,
157 const std::string& Msg) :
158 openfluid::base::Exception(ID,Msg), m_WareType(WType), m_Stage(openfluid::base::SimulationStatus::UNKNOWN),
159 m_TimeIndex(TimeIndex), m_IsTimeIndexed(true)
170 const std::string& Msg) :
171 openfluid::base::Exception(ID,Msg), m_WareType(WType), m_Stage(Stage),
172 m_TimeIndex(TimeIndex), m_IsTimeIndexed(true)
174 updateSourceInfo(WType,Stage,m_Source);
unsigned long long TimeIndex_t
Definition: DateTime.hpp:62
Definition: SimulationStatus.hpp:60
WareException(const WareID_t &ID, const PluggableWare::WareType &WType, const openfluid::base::SimulationStatus::SimulationStage &Stage, const openfluid::core::TimeIndex_t &TimeIndex, const std::string &Msg)
Definition: WareException.hpp:166
Definition: Exception.hpp:52
Definition: SimulationStatus.hpp:60
openfluid::base::SimulationStatus::SimulationStage m_Stage
Definition: WareException.hpp:59
Definition: PluggableWare.hpp:93
Definition: PluggableWare.hpp:93
bool m_IsTimeIndexed
Definition: WareException.hpp:63
WareType
Definition: PluggableWare.hpp:93
static void updateSourceInfo(const PluggableWare::WareType &WType, const openfluid::base::SimulationStatus::SimulationStage &Stage, std::string &SourceStr)
Definition: WareException.hpp:95
WareException(const WareID_t &ID, const PluggableWare::WareType &WType, const std::string &Source, const openfluid::core::TimeIndex_t &TimeIndex, const std::string &Msg)
Definition: WareException.hpp:153
Definition: SimulationStatus.hpp:60
void buildFullMessage()
Definition: WareException.hpp:65
Definition: SimulationStatus.hpp:60
WareException(const WareID_t &ID, const PluggableWare::WareType &WType, const openfluid::base::SimulationStatus::SimulationStage &Stage, const std::string &Msg)
Definition: WareException.hpp:142
std::string WareID_t
Definition: WareSignature.hpp:86
PluggableWare::WareType m_WareType
Definition: WareException.hpp:57
Definition: SimulationStatus.hpp:60
Definition: SimulationStatus.hpp:60
openfluid::core::TimeIndex_t m_TimeIndex
Definition: WareException.hpp:61
SimulationStage
Definition: SimulationStatus.hpp:60
WareException(const WareID_t &ID, const PluggableWare::WareType &WType, const std::string &Source, const std::string &Msg)
Definition: WareException.hpp:130
#define DLLEXPORT
Definition: dllexport.hpp:51
Definition: WareException.hpp:53