1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
6 * Created on: Dec 8, 2014
11 #include <ModelAPI_Events.h>
13 ModelAPI_ObjectUpdatedMessage::ModelAPI_ObjectUpdatedMessage(const Events_ID theID,
14 const void* theSender)
15 : Events_MessageGroup(theID, theSender)
20 ModelAPI_ObjectUpdatedMessage::~ModelAPI_ObjectUpdatedMessage()
25 ModelAPI_ObjectDeletedMessage::ModelAPI_ObjectDeletedMessage(const Events_ID theID,
26 const void* theSender)
27 : Events_MessageGroup(theID, theSender)
32 ModelAPI_ObjectDeletedMessage::~ModelAPI_ObjectDeletedMessage()
37 ModelAPI_FeatureStateMessage::ModelAPI_FeatureStateMessage(const Events_ID theID,
38 const void* theSender)
39 : Events_Message(theID, theSender)
41 myCurrentFeature = std::shared_ptr<ModelAPI_Feature>();
44 ModelAPI_FeatureStateMessage::~ModelAPI_FeatureStateMessage()
49 std::shared_ptr<ModelAPI_Feature> ModelAPI_FeatureStateMessage::feature() const
51 return myCurrentFeature;
54 void ModelAPI_FeatureStateMessage::setFeature(std::shared_ptr<ModelAPI_Feature>& theFeature)
56 myCurrentFeature = theFeature;
59 bool ModelAPI_FeatureStateMessage::hasState(const std::string& theKey) const
61 return myFeatureState.find(theKey) != myFeatureState.end();
64 bool ModelAPI_FeatureStateMessage::state(const std::string& theFeatureId, bool theDefault) const
66 if(hasState(theFeatureId)) {
67 return myFeatureState.at(theFeatureId);
72 void ModelAPI_FeatureStateMessage::setState(const std::string& theFeatureId, bool theValue)
74 myFeatureState[theFeatureId] = theValue;
77 std::list<std::string> ModelAPI_FeatureStateMessage::features() const
79 std::list<std::string> result;
80 std::map<std::string, bool>::const_iterator it = myFeatureState.begin();
81 for( ; it != myFeatureState.end(); ++it) {
82 result.push_back(it->first);
88 ModelAPI_DocumentCreatedMessage::ModelAPI_DocumentCreatedMessage(const Events_ID theID, const void* theSender)
89 : Events_Message(theID, theSender)
94 ModelAPI_DocumentCreatedMessage::~ModelAPI_DocumentCreatedMessage()
99 DocumentPtr ModelAPI_DocumentCreatedMessage::document() const
104 void ModelAPI_DocumentCreatedMessage::setDocument(DocumentPtr theDocument)
106 myDocument = theDocument;