Salome HOME
Debug of the parametric model updates
[modules/shaper.git] / src / Events / Events_Loop.h
index b02c978c89109fd63c58a546f9bba937ae6559ae..b8a628ff7d73a9050e6ab527f5b620d4661ea2ca 100644 (file)
@@ -9,6 +9,7 @@
 #include <Events_Listener.h>
 
 #include <map>
+#include <set>
 #include <list>
 
 class Events_MessageGroup;
@@ -34,6 +35,9 @@ class Events_Loop
   /// map from event ID to groupped messages (accumulated on flush)
   std::map<char*, boost::shared_ptr<Events_Message> > myGroups;
 
+  ///< set of messages that are flushed right now, so they are not grouped
+  std::set<char*> myFlushed;
+
   /// to process flushes or not
   bool myFlushActive;
 
@@ -62,6 +66,12 @@ class Events_Loop
   //! Allows to disable flushes: needed in synchronization of document mechanism 
   //! (to synchronize all and only then flush create, update, etc in correct order)
   EVENTS_EXPORT void activateFlushes(const bool theActivate);
+
+  //! Clears all collected messages
+  EVENTS_EXPORT void clear(const Events_ID& theID);
+
+  //! Enables flush without grouping for the given message
+  EVENTS_EXPORT void autoFlush(const Events_ID& theID, const bool theAuto = true);
 };
 
 #endif