mesquite.align.lib
Class AlignMatch

java.lang.Object
  extended by mesquite.lib.MenuOwner
      extended by mesquite.lib.EmployerEmployee
          extended by mesquite.lib.MesquiteModule
              extended by mesquite.lib.duties.DataMatcher
                  extended by mesquite.categ.lib.CategDataMatcher
                      extended by mesquite.align.lib.AlignMatch
All Implemented Interfaces:
Commandable, Doomable, Explainable, FileDirtier, FunctionExplainable, HNode, Identifiable, Listable, Logger, MesquiteListener, Showable

public abstract class AlignMatch
extends CategDataMatcher


Field Summary
protected  MesquiteSubmenuSpec mss
           
 
Fields inherited from class mesquite.lib.duties.DataMatcher
data, state, table
 
Fields inherited from class mesquite.lib.MesquiteModule
author, browserString, checkMethodsAtStartup, hiredAsDefaultInScripting, lastResult, lastResultString, logWindow, mesquiteDirectory, mesquiteDirectoryPath, mesquiteTrunk, moduleInfo, prefsDirectory, proj, textEdgeCompensationHeight, textEdgeCompensationWidth, totalFinalized, userDirectory
 
Fields inherited from class mesquite.lib.EmployerEmployee
employees, employer, startupBailOut, stringPos, suppressHireQueries, totalCreated, totalDisposed, useOtherChoices
 
Fields inherited from class mesquite.lib.MenuOwner
considerPriorities, doomed, MAXPRIORITY, menuCompositionTime, menuCompositionTime1, menuCompositionTime2, menuCompositionTime2a, menuCompositionTime2b, menuCompositionTime2c, menuCompositionTime3, menuCompositionTime4, menuCompositionTime5, menuCompositionTime6, menuCompositionTime7, menuCompositionTime8, menuCompositionTime9, menuTracing, module, parser
 
Fields inherited from interface mesquite.lib.MesquiteListener
ANNOTATION_ADDED, ANNOTATION_CHANGED, ANNOTATION_DELETED, ASSOCIATED_CHANGED, BRANCHES_REARRANGED, BRANCHLENGTHS_CHANGED, COMMAND_CANCELLED, DATA_CHANGED, ELEMENT_CHANGED, ITEMS_ADDED, NAMES_CHANGED, OBJECT_DESTROYED, PARTS_ADDED, PARTS_CHANGED, PARTS_DELETED, PARTS_MOVED, SELECTION_CHANGED, TAXA_SUBSTITUTED, TEXTFIELD_EDITED, UNKNOWN, VALUE_CHANGED
 
Fields inherited from interface mesquite.lib.HNode
MOUSEDOWN, MOUSEEXIT, MOUSEMOVE
 
Constructor Summary
AlignMatch()
           
 
Method Summary
 java.lang.Object doCommand(java.lang.String commandName, java.lang.String arguments, CommandChecker checker)
          A request for the MesquiteModule to perform a command.
 double getApproximateWorstMatchValue(long[] originalArray)
           
 double getBestMatchValue(long[] originalArray)
           
 boolean getHigherIsBetter()
          Returns whether or not better matches have higher values or not.
 Snapshot getSnapshot(MesquiteFile file)
          Return Mesquite commands that will put the module (approximately) back into its current state.
abstract  long[] getTransformedCandidateArray(long[] candidateArray)
           
protected  void initAligner()
           
 int[][] modifyAlignmentCosts(int[][] defaultSubs)
          Override if one wishes to modify the alignment costs away from the default.
 double sequenceMatch(long[] originalArray, int candidateTaxon, int candidateStartChar, MesquiteInteger candidateEndChar)
          Returns whether candidate stretch of matrix matches the data contained in the long array
 double sequenceMatch(long[] originalArray, long[] candidateArray)
          Returns the match of the two long arrays
 void setTableAndData(MesquiteTable table, CharacterData data)
           
 boolean startJob(java.lang.String arguments, java.lang.Object condition, boolean hiredByName)
          startJob is called automatically when an employee is hired.
 
Methods inherited from class mesquite.categ.lib.CategDataMatcher
getApproximateWorstMatchValue, getBestMatchValue, getCompatibilityTest, sequenceMatch, sequenceMatch
 
Methods inherited from class mesquite.lib.duties.DataMatcher
getBestMatchValue, getDutyClass, getDutyName, getWorstMatchValue, prepare, requiresApplicable, sequenceMatch, sequenceMatch
 
Methods inherited from class mesquite.lib.MesquiteModule
accumulateParameters, addNEXUSBlock, alert, alert, anySubstantivePrereleases, broadCastAssignedID, changed, classFieldChanged, clearLastResult, clearResultAndLastResult, compatibleWithSystem, containerOfModule, createSupportDirectory, deleteSupportDirectory, discreetAlert, discreetAlert, dispose, disposing, echoStringToFile, employeeOutputInvalid, employeeParametersChanged, employeeQuit, employerWithWindow, endJob, fileAboutToBeWritten, fileDirtiedByCommand, fileElementAdded, fileReadIn, finalize, findNEXUSBlock, getAppletInfo, getAuthors, getAutoSaveMacros, getBrowserManualPath, getBrowserPanel, getBuildDate, getBuildVersion, getCitation, getCommandPagePath, getDateReleased, getDefaultModule, getDocsPath, getExpectedPath, getExplanation, getFunctionIconPath, getHireSubchoice, getHTMLExplanation, getID, getIfLastEmployee, getKeywords, getManualPath, getMesquiteVersion, getModuleInfo, getName, getNameAndParameters, getNameForMenuItem, getNexusBlockTest, getNexusCommands, getNexusCommandTest, getPackageImagesPath, getPackageIntroModule, getPackagePath, getParameters, getParametersChangedNotifier, getPath, getPermanentIDString, getProject, getRootImageDirectoryPath, getRootPath, getShortClassName, getShortClassName, getSizedRootImageFilePath, getSubfunctions, getSubfunctionsVector, getURLString, getUserChooseable, getVersion, getVersionInt, getVersionOfFirstRelease, getVeryShortName, getXMLPrefsVersion, iQuit, iQuit, isCorrectRootTag, isPrerelease, isSubstantive, listEmployeeParameters, listEmployees, loadPreferences, log, log, logln, logln, loglnNoEcho, logNoEcho, makeCommand, mesquiteStartup, nameIsInstanceOf, nameMatches, offHold, okToDispose, onHold, outputInvalid, pageModule, panelGoAway, parametersChanged, parametersChanged, parseFullXMLDocument, permanentIDExists, preparePreferencesForFile, preparePreferencesForXML, processPreferencesFromFile, processPreferencesFromXML, processSingleXMLPreference, projectEstablished, quittingConditions, readNexusBlock, readNexusCommand, readUnrecognizedCommand, registerSubfunction, removeNEXUSBlock, removePaging, reportProfiling, requestPrimaryChoice, respondToPaging, returningPage, saveLastResult, saveLastResult, saveLastResult, saveLastResult, saveLastResultString, saveLastResultString, setAutoSaveMacros, setProject, setToLastEmployee, showCitation, showHTMLSnippet, showLogWindow, showLogWindow, showManual, showMe, showWebPage, showWebPage, sorry, startProfiling, storePreferences, superStartJob, supportDirectoryPath, toString, URLinPackageIntro, windowGoAway, writeNexusCommands, xmlPrefsVersionMustMatch
 
Methods inherited from class mesquite.lib.EmployerEmployee
canHireMoreThanOnce, closeDownAllEmployees, decrementEmployeeBrowserRefreshSuppression, deferBranchPriority, employeeOfWhichEmployee, findCharacterDataEditor, findCharacterDataEditorRec, findElementManager, findEmployee, findEmployee, findEmployeeNeed, findEmployeeWithDuty, findEmployeeWithDuty, findEmployeeWithIDNumber, findEmployeeWithName, findEmployeeWithName, findEmployeeWithName, findEmployeeWithPermanentID, findEmployerWithDuty, findImmediateEmployeeWithDuty, findModelCurator, findModelCuratorRec, findModules, findModulesWithDuty, findNearestColleagueWithDuty, findNearestColleagueWithName, findNearestModuleWithDuty, findNextEmployeeWithDuty, fireEmployee, getClonableEmployeeCommand, getEmployeeNeeds, getEmployeeNeedsVector, getEmployeeReference, getEmployeeVector, getEmployer, getEmployerPath, getExplanationByWhichHired, getFileCoordinator, getHColor, getHDaughters, getHImage, getHiredAs, getHiringCommand, getHiringCondition, getHMother, getHShow, getImmediateEmployeesWithDuty, getNextEmployeeWithDuty, getNumberOfEmployees, getNumSupplements, getSearchableAsModule, getSupplementName, getTypeName, hireAllCompatibleEmployees, hireAllEmployees, hireAllOtherCompatibleEmployees, hireAllOtherEmployees, hireCompatibleEmployee, hireEmployee, hireEmployeeFromModuleInfo, hireNamedEmployee, hireNamedEmployee, hireNamedEmployee, hNodeAction, hSupplementTouched, incrementEmployeeBrowserRefreshSuppression, instantiateEmployee, instantiateModule, internalStartUp, isEmployerOf, isMacroAnchor, isPriorityFixed, listEmployees, listNeeds, makeEmployeeVector, moduleActiveWord, moveEmployeeToFront, numCompatibleModulesAvailable, numModulesAvailable, purposeOfEmployee, queryChooseModule, refreshBrowser, registerEmployeeNeed, registerEmployeeNeed, replaceCompatibleEmployee, replaceEmployee, replaceEmployeeWithNext, setHiringCommand, setPriorityFixed, setShowHiringPath, whatIsMyPurpose
 
Methods inherited from class mesquite.lib.MenuOwner
addAuxiliaryMenu, addCheckMenuItem, addCheckMenuItemToSubmenu, addItemToSubmenu, addItemToSubmenu, addLineToSubmenu, addMenuItem, addMenuItem, addMenuItem, addMenuLine, addModuleMenuItems, addSubmenu, addSubmenu, addSubmenu, addSubmenu, addSubmenu, checkMISVector, composeMenuBar, decrementMenuResetSuppression, defineMenus, deleteAllMenuItems, deleteMenuItem, destroyMenu, disposeMenuSpecifications, doom, findMenuAmongEmployers, getContainingMenuSpec, getMenu, getMenuItemSpecs, getMenuResetSuppression, getModuleWindow, getUseMenubar, incrementMenuResetSuppression, isDoomed, makeMenu, needsMenu, recomposeWindowsMenu, resetAllMenuBars, resetAllWindowsMenus, resetContainingMenuBar, setMenuResetSuppression, setMenuToUse, setModule, setModuleWindow, setUndoMenuItemEnabled, setUseMenubar, showPopUp, zeroMenuResetSuppression
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

mss

protected MesquiteSubmenuSpec mss
Constructor Detail

AlignMatch

public AlignMatch()
Method Detail

startJob

public boolean startJob(java.lang.String arguments,
                        java.lang.Object condition,
                        boolean hiredByName)
Description copied from class: MesquiteModule
startJob is called automatically when an employee is hired. The parameter scripting indicates if the hiring occurs in the context of automated scripting (e.g., on reading a Mesquite block of a NEXUS file). The module can limit user interface calls (e.g. dialog boxes) when scripting occurs.

The MesquiteModule should override this method, to add code to initialize things it needs, and to hire relevant necessary employees. startJob must return true if the module was successfully started; false otherwise. Thus, if the module needs a data matrix but the file has none, it returns false and the hiring process is undone.

Most modules will ignore the arguments and condition.

Specified by:
startJob in class MesquiteModule

modifyAlignmentCosts

public int[][] modifyAlignmentCosts(int[][] defaultSubs)
Override if one wishes to modify the alignment costs away from the default.


initAligner

protected void initAligner()

setTableAndData

public void setTableAndData(MesquiteTable table,
                            CharacterData data)
Overrides:
setTableAndData in class DataMatcher

getSnapshot

public Snapshot getSnapshot(MesquiteFile file)
Description copied from class: MesquiteModule
Return Mesquite commands that will put the module (approximately) back into its current state. Used so that on file save, a Mesquite block can be saved that will return the user more or less to previous state.

Overrides:
getSnapshot in class MesquiteModule

getHigherIsBetter

public boolean getHigherIsBetter()
Returns whether or not better matches have higher values or not.

Overrides:
getHigherIsBetter in class DataMatcher

sequenceMatch

public double sequenceMatch(long[] originalArray,
                            long[] candidateArray)
Returns the match of the two long arrays

Specified by:
sequenceMatch in class CategDataMatcher

getBestMatchValue

public double getBestMatchValue(long[] originalArray)
Specified by:
getBestMatchValue in class CategDataMatcher

getApproximateWorstMatchValue

public double getApproximateWorstMatchValue(long[] originalArray)
Specified by:
getApproximateWorstMatchValue in class CategDataMatcher

sequenceMatch

public double sequenceMatch(long[] originalArray,
                            int candidateTaxon,
                            int candidateStartChar,
                            MesquiteInteger candidateEndChar)
Returns whether candidate stretch of matrix matches the data contained in the long array

Specified by:
sequenceMatch in class CategDataMatcher

getTransformedCandidateArray

public abstract long[] getTransformedCandidateArray(long[] candidateArray)

doCommand

public java.lang.Object doCommand(java.lang.String commandName,
                                  java.lang.String arguments,
                                  CommandChecker checker)
Description copied from class: MesquiteModule
A request for the MesquiteModule to perform a command. It is passed two strings, the name of the command and the arguments. This should be overridden by any module that wants to respond to a command.

Specified by:
doCommand in interface Commandable
Overrides:
doCommand in class MesquiteModule