ij.macro
Class Interpreter

java.lang.Object
  extended by ij.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
 
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, EXIT, EXP, FALSE, FILE, FILL, FILL_OVAL, FILL_RECT, 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_DIRECTORY, GET_FILE_LIST, GET_FONT_LIST, GET_HEIGHT, GET_HISTOGRAM, GET_ID, GET_IMAGE_INFO, GET_INFO, GET_LINE, 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_STATE, GET_STATISTICS, GET_STRING, GET_THRESHOLD, GET_TIME, GET_TITLE, GET_VERSION, GET_VOXEL_SIZE, GET_WIDTH, GET_ZOOM, GT, GTE, IF, INDEX_OF, INVERT, IS_ACTIVE, IS_KEY_DOWN, IS_NAN, IS_OPEN, keywordIDs, keywords, LAST_INDEX_OF, LENGTH_OF, LINE_TO, LOG, LOGICAL_AND, LOGICAL_OR, LT, LTE, MACRO, MAKE_LINE, MAKE_OVAL, MAKE_POLYGON, MAKE_RECTANGLE, MAKE_SELECTION, 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, STARTS_WITH, 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, WHILE, WORD, WRITE
 
Constructor Summary
Interpreter()
           
 
Method Summary
static void abort()
          Aborts currently running macro.
static void addBatchModeImage(ImagePlus imp)
           
static java.lang.String getAdditionalFunctions()
           
static ImagePlus getBatchModeImage(int id)
           
static int getBatchModeImageCount()
           
static int[] getBatchModeImageIDs()
           
static Interpreter getInstance()
           
static ImagePlus getLastBatchModeImage()
           
static boolean isBatchMode()
           
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 variablesk.
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
 

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 variablesk.


abort

public static void abort()
Aborts currently running 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()