ij.macro
Class Interpreter

java.lang.Object
  extended byij.macro.Interpreter
All Implemented Interfaces:
MacroConstants

public class Interpreter
extends java.lang.Object
implements MacroConstants

This is the recursive descent parser/interpreter for the ImageJ macro language.


Field Summary
static boolean batchMode
           
 
Fields inherited from interface ij.macro.MacroConstants
ABS, ACOS, ARRAY, ARRAY_FUNCTION, arrayFunctionIDs, arrayFunctions, ASIN, ATAN, ATAN2, AUTO_UPDATE, BEEP, BIT_DEPTH, CALCULATOR, CALIBRATE, CALL, CHANGE_VALUES, CHAR_CODE_AT, CLOSE, COS, D2S, DIALOG, DIV_EQUAL, DO, DO_COMMAND, DO_WAND, DRAW_LINE, DRAW_OVAL, DRAW_RECT, DRAW_STRING, DUMP, ELSE, ENDS_WITH, EOF, EOL, EQ, EVAL, EXEC, EXIT, EXP, EXT, FALSE, FILE, FILL, FILL_OVAL, FILL_RECT, FIT, FLOOD_FILL, FLOOR, FOR, FROM_CHAR_CODE, FUNCTION, functionIDs, functions, GET_ARGUMENT, GET_BOOLEAN, GET_BOUNDING_RECT, GET_BOUNDS, GET_COORDINATES, GET_COUNT, GET_CURSOR_LOC, GET_DATE_AND_TIME, GET_DIMENSIONS, GET_DIRECTORY, GET_FILE_LIST, GET_FONT_LIST, GET_HEIGHT, GET_HISTOGRAM, GET_ID, GET_IMAGE_INFO, GET_INFO, GET_LINE, GET_LIST, GET_LOCATION_AND_SIZE, GET_LUT, GET_METADATA, GET_MIN_AND_MAX, GET_NUMBER, GET_PIXEL, GET_PIXEL_SIZE, GET_PROFILE, GET_RAW_STATISTICS, GET_RESULT, GET_RESULT_LABEL, GET_SLICE_NUMBER, GET_STATISTICS, GET_STRING, GET_STRING_WIDTH, GET_THRESHOLD, GET_TIME, GET_TITLE, GET_VALUE, GET_VERSION, GET_VOXEL_SIZE, GET_WIDTH, GET_ZOOM, GT, GTE, IF, INDEX_OF, INVERT, IS, IS_ACTIVE, IS_KEY_DOWN, IS_NAN, IS_OPEN, keywordIDs, keywords, LAST_INDEX_OF, LENGTH_OF, LINE_TO, LIST, LOG, LOGICAL_AND, LOGICAL_OR, LT, LTE, MACRO, MAKE_LINE, MAKE_OVAL, MAKE_POINT, MAKE_POLYGON, MAKE_RECTANGLE, MAKE_SELECTION, MATCHES, MAX_OF, MIN_OF, MINUS_EQUAL, MINUS_MINUS, MOVE_TO, MUL_EQUAL, NaN, NEQ, NEW_ARRAY, NEW_IMAGE, NEW_MENU, NIMAGES, NOP, NRESULTS, NSLICES, NUMBER, NUMERIC_FUNCTION, numericFunctionIDs, numericFunctions, OPEN, PARSE_FLOAT, PARSE_INT, PI, PLOT, PLUS_EQUAL, PLUS_PLUS, POW, PREDEFINED_FUNCTION, PRINT, PUT_PIXEL, RANDOM, RENAME, REPLACE, REQUIRES, RESET, RESET_MIN_MAX, RESET_THRESHOLD, RESTORE_PREVIOUS_TOOL, RESTORE_SETTINGS, RETURN, ROI_MANAGER, ROUND, RUN, RUN_MACRO, SAVE, SAVE_AS, SAVE_SETTINGS, SCREEN_HEIGHT, SCREEN_WIDTH, SELECT, SELECT_IMAGE, SELECTION_NAME, SELECTION_TYPE, SET_AUTO_THRESHOLD, SET_BACKGROUND, SET_BATCH_MODE, SET_COLOR, SET_FONT, SET_FOREGROUND, SET_JUSTIFICATION, SET_KEY_DOWN, SET_LINE_WIDTH, SET_LOCATION, SET_LUT, SET_METADATA, SET_MIN_MAX, SET_OPTION, SET_PASTE_MODE, SET_PIXEL, SET_RESULT, SET_RGB_WEIGHTS, SET_SELECTION_LOC, SET_SELECTION_NAME, SET_SLICE, SET_THRESHOLD, SET_TOOL, SET_VOXEL_SIZE, SET_Z_COORDINATE, SETUP_UNDO, SHIFT_LEFT, SHIFT_RIGHT, SHOW_MESSAGE, SHOW_MESSAGE_WITH_CANCEL, SHOW_PROGRESS, SHOW_STATUS, SHOW_TEXT, SIN, SNAPSHOT, SPLIT, SQRT, STACK, STARTS_WITH, STRING, STRING_CONSTANT, STRING_FUNCTION, stringFunctionIDs, stringFunctions, SUBSTRING, TAN, TO_BINARY, TO_HEX, TO_LOWER_CASE, TO_STRING, TO_UPPER_CASE, TOK_MASK, TOK_SHIFT, TOOL_ID, TRUE, UPDATE_DISPLAY, UPDATE_RESULTS, USER_FUNCTION, VAR, WAIT, WAIT_FOR_USER, WHILE, WORD, WRITE
 
Constructor Summary
Interpreter()
           
 
Method Summary
static void abort()
          Aborts currently running macro.
static void abort(Interpreter interpreter)
          Aborts the specified macro.
static void addBatchModeImage(ImagePlus imp)
           
static java.lang.String getAdditionalFunctions()
           
static ImagePlus getBatchModeImage(int id)
           
static int getBatchModeImageCount()
           
static int[] getBatchModeImageIDs()
           
static RoiManager getBatchModeRoiManager()
          Returns the batch mode RoiManager instance.
static Interpreter getInstance()
           
static ImagePlus getLastBatchModeImage()
           
static boolean isBatchMode()
           
static boolean isBatchModeRoiManager()
          Returns true if there is an internal batch mode RoiManager.
static void removeBatchModeImage(ImagePlus imp)
           
 void run(Program pgm)
          Interprets the specified tokenized macro file starting at location 0.
 void run(java.lang.String macro)
          Interprets the specified string.
 java.lang.String run(java.lang.String macro, java.lang.String arg)
          Runs the specified macro, passing it a string argument and returning a string value.
 void runMacro(Program pgm, int macroLoc, java.lang.String macroName)
          Interprets the specified tokenized macro starting at the specified location.
 void saveGlobals(Program pgm)
          Saves global variables.
static void setAdditionalFunctions(java.lang.String functions)
          The specified string, if not null, is added to strings passed to the run() method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

batchMode

public static boolean batchMode
Constructor Detail

Interpreter

public Interpreter()
Method Detail

run

public void run(java.lang.String macro)
Interprets the specified string.


run

public java.lang.String run(java.lang.String macro,
                            java.lang.String arg)
Runs the specified macro, passing it a string argument and returning a string value.


run

public void run(Program pgm)
Interprets the specified tokenized macro file starting at location 0.


runMacro

public void runMacro(Program pgm,
                     int macroLoc,
                     java.lang.String macroName)
Interprets the specified tokenized macro starting at the specified location.


saveGlobals

public void saveGlobals(Program pgm)
Saves global variables.


abort

public static void abort()
Aborts currently running macro.


abort

public static void abort(Interpreter interpreter)
Aborts the specified macro.


getInstance

public static Interpreter getInstance()

isBatchMode

public static boolean isBatchMode()

addBatchModeImage

public static void addBatchModeImage(ImagePlus imp)

removeBatchModeImage

public static void removeBatchModeImage(ImagePlus imp)

getBatchModeImageIDs

public static int[] getBatchModeImageIDs()

getBatchModeImageCount

public static int getBatchModeImageCount()

getBatchModeImage

public static ImagePlus getBatchModeImage(int id)

getLastBatchModeImage

public static ImagePlus getLastBatchModeImage()

setAdditionalFunctions

public static void setAdditionalFunctions(java.lang.String functions)
The specified string, if not null, is added to strings passed to the run() method.


getAdditionalFunctions

public static java.lang.String getAdditionalFunctions()

getBatchModeRoiManager

public static RoiManager getBatchModeRoiManager()
Returns the batch mode RoiManager instance.


isBatchModeRoiManager

public static boolean isBatchModeRoiManager()
Returns true if there is an internal batch mode RoiManager.