+ /// \brief Stop sending the Update event until all features updated
+ /// \return \c true, if the last flushed event is Update
+ bool stopSendUpdate() const;
+ /// \brief Allow to send the Update event
+ void allowSendUpdate() const;
+
+ /// \brief If the message shows that any group is repaired after conflicting,
+ /// find other groups on the same sketch, which have conflicts.
+ void checkConflictingConstraints(const std::shared_ptr<Events_Message>& theMessage);
+
+ /// \brief Calculate DoF for each sketch and send messages if changed
+ void degreesOfFreedom();
+