/* Performance.java -- An instance of a process.
Copyright (C) 2005 The University of Sheffield.
This file is part of the CASheW-s editor.
The CASheW-s editor is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
The CASheW-s editor is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
General Public License for more details.
You should have received a copy of the GNU General Public License
along with The CASheW-s editor; see the file COPYING. If not, write to the
Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
02111-1307 USA.
*/
package nongnu.cashews.language.process;
import java.net.URI;
import java.util.List;
/**
* Represents an instance of an atomic or
* composite process. Each performance has a name
* and an associated process, which it realises. Each performance
* also has the possibility of multiple ValueData
s and
* ValueCollector
s which link inputs to constant data and
* functions, respectively.
*
* @author Andrew John Hughes (gnu_andrew@member.fsf.org)
* @see Process
* @see ValueData
* @see ValueCollector
*/
public class Performance
implements MultiPerformElement
{
/**
* The name of this performance.
*
* @serial the performance name.
*/
private URI name;
/**
* The process this performance references.
*
* @serial the referenced process.
*/
private Process process;
/**
* The ValueData
s for this performance. A
* ValueData
links an input to some constant data.
*
* @serial the ValueData
s.
*/
private List valueDatas;
/**
* The ValueCollector
s for this performance. A
* ValueCollector
links an input to the result of
* some function.
*
* @serial the ValueCollector
s.
*/
private List valueCollectors;
}