* - Synchronization activities may possibly be connected to no action.
*/
class XBT_PUBLIC Activity {
+#ifndef DOXYGEN
friend Comm;
friend XBT_PUBLIC void intrusive_ptr_release(Comm * c);
friend XBT_PUBLIC void intrusive_ptr_add_ref(Comm * c);
friend Exec;
friend XBT_PUBLIC void intrusive_ptr_release(Exec * e);
friend XBT_PUBLIC void intrusive_ptr_add_ref(Exec * e);
+ friend Io;
+ friend XBT_PUBLIC void intrusive_ptr_release(Io* i);
+ friend XBT_PUBLIC void intrusive_ptr_add_ref(Io* i);
+#endif
protected:
Activity() = default;
* Raises: timeout exception.*/
virtual Activity* wait(double timeout) = 0;
/** Cancel that activity */
- //virtual void cancel();
+ virtual Activity* cancel() = 0;
/** Retrieve the current state of the activity */
Activity::State get_state() { return state_; }