+ xbt::signal<void(Comm const&)> on_this_recv;
+
+protected:
+ void fire_on_completion() const override {
+ /* The completion signal of a Comm has to be thrown only once and not by the sender AND the receiver.
+ then Comm::on_completion is thrown in the kernel in CommImpl::finish.
+ */
+ }
+ void fire_on_this_completion() const override {
+ /* The completion signal of a Comm has to be thrown only once and not by the sender AND the receiver.
+ then Comm::on_this_completion is thrown in the kernel in CommImpl::finish.
+ */
+ }
+ /* These ensure that the on_completion signals are really thrown */
+ void fire_on_completion_for_real() const { Activity_T<Comm>::fire_on_completion(); }
+ void fire_on_this_completion_for_real() const { Activity_T<Comm>::fire_on_this_completion(); }