|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--moves.EuMove
The class behind all move classes. Each such class represents a LEA move. Many of them can be constructed in two ways, one in which all input and output is specified (for use when reading from a LEA program on file) and one in which only tentative input is specified (for use when recording moves interactively).
Field Summary | |
protected java.lang.String |
allowedSegments
|
protected interagents.finalWrapper |
in
Contains the input data for the move, as implicit information to be held up against a EuLab. |
protected interagents.finalWrapper |
out
Contains the outdata for the move, as implicit information to be held up against a EuLab. |
Constructor Summary | |
EuMove(interagents.finalWrapper in,
interagents.finalWrapper out,
fundamentals.EuArguments args,
int beacon,
java.lang.String inmodes,
java.lang.String outmodes,
java.lang.String allowedSegments,
int argumentsExpected)
This constructor checks syntax and sets up the variables in, out, in.mode, out.mode |
|
EuMove(java.util.Vector inputs,
java.util.Vector results,
java.util.Vector newresults,
interagents.EuLab lab,
java.lang.String inmodes,
java.lang.String outmodes)
This constructor creates, given a selection of objects from a user, a move which the user may elect to perform. |
Method Summary | |
protected void |
checkSegment(int segment)
Throws DesignException if the move is called in an illegal segment |
protected void |
ex(interagents.EuLab lab)
Executes core commands of the move in joined main/macro mode, possibly affecting the passed @see EuLab. |
int |
executeMacro(interagents.EuLab lab,
librarian.ppProcessor ppp,
interagents.explicitHolder caller)
Executes the move in macro mode, possibly affecting the passed @see EuLab Send or recieve data to/from calling program as explicits in a passed explicitHolder |
int |
executeMain(interagents.EuLab lab,
librarian.ppProcessor ppp)
Executes the move, possibly affecting the passed @see EuLab |
int |
executeSegmentOnly(interagents.EuLab lab,
librarian.ppProcessor ppp)
|
protected void |
exMacro(interagents.EuLab lab,
interagents.explicitHolder caller)
Executes core commands of the move in macro mode, possibly affecting the passed @see EuLab Send or recieve data to/from calling program as explicits in a passed explicitHolder. |
protected void |
exMain(interagents.EuLab lab)
Executes core commands of the move in main mode, possibly affecting the passed @see EuLab Calls ex() as default. |
int |
getFirstOutIndex()
|
protected void |
initArguments(fundamentals.EuArguments args,
int numberOfArguments)
Initializes arguments, throwing a DesignException if arguments unexpected This instance will not accept arguments |
protected void |
initBeacon(int beacon)
Initializes beacon, throwing a DesignException if beacon unexpected This instance will not accept beacons |
protected boolean |
iobUsageChecks()
Does various checks to see that the conditions described in the field Input/output/beacon usage of the description of the LEA commands are in fact met. |
protected void |
issueBeacon(interagents.finalWrapper preout,
interagents.EuLab lab)
Default is no beacons, overwritten in constructFamilyBeacon |
java.lang.String |
name()
|
java.lang.String |
operationName()
|
void |
passExceptionDetails(exceptions.LeaException le)
|
void |
passHintDetails(fundamentals.EuHint hint,
interagents.EuLab lab)
|
void |
passSelection(interagents.userLab lab)
|
protected int |
postMacro(interagents.EuLab lab,
librarian.ppProcessor ppp)
|
protected int |
postMain(interagents.EuLab lab,
librarian.ppProcessor ppp)
|
protected int |
postprocess(interagents.EuLab lab,
librarian.ppProcessor ppp)
Performs various postprocessing of the move, updating the ppProcessor if necessary. |
protected void |
preMacro(librarian.ppProcessor ppp)
|
protected void |
preMain(librarian.ppProcessor ppp)
|
protected void |
preprocess(librarian.ppProcessor ppp)
Performs various preprocessing of the move. |
protected boolean |
specialSegmentOK(int segment)
Determines whether a call to this move is legal in the passed special segment. |
java.lang.String |
toString()
Document the move |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Field Detail |
protected interagents.finalWrapper in
protected interagents.finalWrapper out
protected java.lang.String allowedSegments
Constructor Detail |
public EuMove(interagents.finalWrapper in, interagents.finalWrapper out, fundamentals.EuArguments args, int beacon, java.lang.String inmodes, java.lang.String outmodes, java.lang.String allowedSegments, int argumentsExpected) throws DesignException
in
- the input @see finalWrapperout
- the output @see finalWrapperargs
- argumentsbeacon
- a beacon, or 0 if no such was requestedpublic EuMove(java.util.Vector inputs, java.util.Vector results, java.util.Vector newresults, interagents.EuLab lab, java.lang.String inmodes, java.lang.String outmodes) throws LeaException
Method Detail |
public int executeMain(interagents.EuLab lab, librarian.ppProcessor ppp) throws LeaException
lab
- the @see EuLab on which to workppp
- the @see ppProcessor to aid in pre- and postprocessing
LeaException
public int executeMacro(interagents.EuLab lab, librarian.ppProcessor ppp, interagents.explicitHolder caller) throws LeaException
lab
- the @see EuLab on which to workppp
- the @see ppProcessor to aid in pre- and postprocessingcaller
- the explicitHolder with which to communicate with
the calling program.
LeaException
public int executeSegmentOnly(interagents.EuLab lab, librarian.ppProcessor ppp)
protected void exMain(interagents.EuLab lab) throws LeaException
lab
- the @see EuLab on which to work
LeaException
protected void exMacro(interagents.EuLab lab, interagents.explicitHolder caller) throws LeaException
lab
- the @see EuLab on which to workcaller
- the explicitHolder with which to communicate with
the calling program.
LeaException
protected void ex(interagents.EuLab lab) throws LeaException
lab
- the @see EuLab on which to work
LeaException
protected void preMain(librarian.ppProcessor ppp) throws LeaException
LeaException
protected void preMacro(librarian.ppProcessor ppp) throws LeaException
LeaException
protected void preprocess(librarian.ppProcessor ppp) throws LeaException
ppp
- the ppProcessor from which to get
additional information
LeaException
protected int postMain(interagents.EuLab lab, librarian.ppProcessor ppp) throws LeaException
LeaException
protected int postMacro(interagents.EuLab lab, librarian.ppProcessor ppp) throws LeaException
LeaException
protected int postprocess(interagents.EuLab lab, librarian.ppProcessor ppp) throws LeaException
ppp
- the ppProcessor to be updated
LeaException
protected void checkSegment(int segment) throws DesignException
segment
- the current segment
DesignException
protected boolean specialSegmentOK(int segment)
segment
- the current segment
protected void initBeacon(int beacon) throws DesignException
beacon
- an integer representing the requested beacon, or 0 if no
beacon requested
DesignException
- if beacon unexpectedprotected void initArguments(fundamentals.EuArguments args, int numberOfArguments) throws DesignException
args
- a vector containing argumentsnumberOfArguments
- the number of arguments required, or -1 if no fixed requirement
DesignException
- if unexpected quantity of argumentsprotected boolean iobUsageChecks()
public java.lang.String name()
public java.lang.String toString()
toString
in class java.lang.Object
protected void issueBeacon(interagents.finalWrapper preout, interagents.EuLab lab) throws LeaException
LeaException
public void passExceptionDetails(exceptions.LeaException le)
public void passHintDetails(fundamentals.EuHint hint, interagents.EuLab lab) throws LeaException
LeaException
public void passSelection(interagents.userLab lab)
public java.lang.String operationName()
public int getFirstOutIndex()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |