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

de.uni.freiburg.iig.telematik.sepia.petrinet.ifnet.IFNet Maven / Gradle / Ivy

package de.uni.freiburg.iig.telematik.sepia.petrinet.ifnet;

import java.util.Set;

import de.invation.code.toval.types.Multiset;
import de.uni.freiburg.iig.telematik.sepia.event.CapacityEvent;
import de.uni.freiburg.iig.telematik.sepia.mg.ifnet.IFNetMarkingGraph;
import de.uni.freiburg.iig.telematik.sepia.petrinet.abstr.AbstractPlace;
import de.uni.freiburg.iig.telematik.sepia.petrinet.ifnet.abstr.AbstractIFNet;
import de.uni.freiburg.iig.telematik.sepia.petrinet.ifnet.abstr.AbstractIFNetTransition;


public class IFNet extends AbstractIFNet, 
										 IFNetFlowRelation, 
										 IFNetMarking, 
										 RegularIFNetTransition, 
										 DeclassificationTransition> {

	private static final long serialVersionUID = -2155147434115176455L;

	public IFNet() {
		super();
	}

	public IFNet(Set places, Set transitions, IFNetMarking initialMarking) {
		super(places, transitions, initialMarking);
	}

	@Override
	public IFNet newInstance() {
		return new IFNet();
	}
	
	@Override
	public IFNetMarking createNewMarking() {
		return new IFNetMarking();
	}	

	@Override
	protected IFNetPlace createNewPlace(String name, String label) {
		return new IFNetPlace(name, label);
	}
	
	@Override
	protected RegularIFNetTransition createNewRegularTransition(String name, String label, boolean isSilent) {
		return new RegularIFNetTransition(name, label, isSilent);
	}

	@Override
	protected DeclassificationTransition createNewDeclassificationTransition(String name, String label, boolean isSilent) {
		return new DeclassificationTransition(name, label, isSilent);
	}

	@Override
	protected AbstractIFNetTransition createNewTransition(String name, String label, boolean isSilent) {
		return createNewRegularTransition(name, label, isSilent);
	}




	@Override
	protected IFNetFlowRelation createNewFlowRelation(IFNetPlace place, AbstractIFNetTransition transition, Multiset constraint) {
		return new IFNetFlowRelation(place, transition, constraint);
	}

	@Override
	protected IFNetFlowRelation createNewFlowRelation(AbstractIFNetTransition transition, IFNetPlace place, Multiset constraint) {
		return new IFNetFlowRelation(transition, place, constraint);
	}

	@Override
	protected IFNetFlowRelation createNewFlowRelation(IFNetPlace place, AbstractIFNetTransition transition) {
		return new IFNetFlowRelation(place, transition);
	}

	@Override
	protected IFNetFlowRelation createNewFlowRelation(AbstractIFNetTransition transition, IFNetPlace place) {
		return new IFNetFlowRelation(transition, place);
	}

	@Override
	public void capacityChanged(CapacityEvent>> o) {}

	@Override
	public Class getMarkingGraphClass() {
		return IFNetMarkingGraph.class;
	}
	
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy