All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.jbpt.petri.unfolding.ICompletePrefixUnfolding Maven / Gradle / Ivy

Go to download

The jBPT code library is a compendium of technologies that support research on design, execution, and evaluation of business processes.

The newest version!
package org.jbpt.petri.unfolding;

import java.util.List;
import java.util.Set;

import org.jbpt.petri.IFlow;
import org.jbpt.petri.IMarking;
import org.jbpt.petri.INode;
import org.jbpt.petri.IPlace;
import org.jbpt.petri.ITransition;

/**
 * Interface to a complete prefix unfolding.
 * 
 * @author Artem Polyvyanyy
 */
public interface ICompletePrefixUnfolding, C extends ICondition, E extends IEvent, F extends IFlow, N extends INode, P extends IPlace, T extends ITransition, M extends IMarking>
		extends IBranchingProcess
{	
	/**
	 * Get cutoff events of this complete prefix unfolding.
	 * 
	 * @return Cutoff events of this complete prefix unfolding.
	 */
	public Set getCutoffEvents();

	/**
	 * Check if a given event is a cutoff event in this complete prefix unfolding.
	 * 
	 * @param event Event of this complete prefix unfolding.
	 * @return true if 'event' is a cutoff event; otherwise false.
	 */
	public boolean isCutoffEvent(E event);

	/**
	 * Get a corresponding event of a given cutoff event.
	 *  
	 * @param event A cutoff event of this complete prefix unfolding.
	 * @return Corresponding event of 'event'; null if 'event' is not a cutoff event.
	 */
	public E getCorrespondingEvent(E event);
	
	/**
	 * Get total order of transitions used to construct this complete prefix unfolding.
	 * 
	 * @return Ordered list of transitions of the originative system which was used to construct this complete prefix unfolding.
	 */
	public List getTotalOrderOfTransitions();
	
	public boolean isHealthyCutoffEvent(E event);
	
	public boolean isProper();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy