package mb.p_raffrayi.impl;

import mb.p_raffrayi.actors.IActor;

public interface IProcess<S, L, D> {

    IDeadlockProtocol<S, L, D> from(IActor<? extends IDeadlockProtocol<S, L, D>> origin, IUnitContext<S, L, D> context);

    IDeadlockProtocol<S, L, D> from(Broker<S, L, D, ?> origin);

}

@@ -63,45 +63,278 @@
 r;%0A%0A
-public interface IProcess%3CS, L, D%3E %7B%0A
+/**%0A * Models an external view on a process, used for deadlock detection. A process can either be a unit or the broker.%0A */%0Apublic interface IProcess%3CS, L, D%3E %7B%0A%0A    /**%0A     * Provides the actor %7B@code origin%7D with an interface to send messages to this process.%0A     */
 %0A   
@@ -452,16 +452,126 @@
 text);%0A%0A
+    /**%0A     * Provides the broker %7B@code origin%7D with an interface to send messages to this process.%0A     */%0A
     IDea

Add a bit of clarification to the meaning of an IProcess.