Class AbstractAnalyzer

    • Constructor Detail

      • AbstractAnalyzer

        protected AbstractAnalyzer​(java.lang.String name,
                                   java.lang.String description,
                                   AnalyzerType type)
    • Method Detail

      • setDefaultEnablement

        protected void setDefaultEnablement​(boolean b)
      • setSupportsOneTimeAnalysis

        protected void setSupportsOneTimeAnalysis()
      • setSupportsOneTimeAnalysis

        protected void setSupportsOneTimeAnalysis​(boolean supportsOneTimeAnalysis)
      • setPrototype

        protected void setPrototype()
      • getName

        public final java.lang.String getName()
        Description copied from interface: Analyzer
        Get the name of this analyzer
        Specified by:
        getName in interface Analyzer
        Returns:
        analyzer name
      • getAnalysisType

        public final AnalyzerType getAnalysisType()
        Description copied from interface: Analyzer
        Get the type of analysis this analyzer performs
        Specified by:
        getAnalysisType in interface Analyzer
        Returns:
        analyze type
      • getDefaultEnablement

        public boolean getDefaultEnablement​(Program program)
        Description copied from interface: Analyzer
        Returns true if this analyzer should be enabled by default. Generally useful analyzers should return true. Specialized analyzers should return false;
        Specified by:
        getDefaultEnablement in interface Analyzer
      • supportsOneTimeAnalysis

        public final boolean supportsOneTimeAnalysis()
        Description copied from interface: Analyzer
        Returns true if it makes sense for this analyzer to directly invoked on an address or addressSet. The AutoAnalyzer plug-in will automatically create an action for each analyzer that returns true.
        Specified by:
        supportsOneTimeAnalysis in interface Analyzer
      • getDescription

        public final java.lang.String getDescription()
        Description copied from interface: Analyzer
        Get a longer description of what this analyzer does.
        Specified by:
        getDescription in interface Analyzer
        Returns:
        analyzer description
      • getPriority

        public final AnalysisPriority getPriority()
        Description copied from interface: Analyzer
        Get the priority that this analyzer should run at.
        Specified by:
        getPriority in interface Analyzer
        Returns:
        analyzer priority
      • removed

        public boolean removed​(Program program,
                               AddressSetView set,
                               TaskMonitor monitor,
                               MessageLog log)
                        throws CancelledException
        Description copied from interface: Analyzer
        Called when the requested information type has been removed. (ie: function removed.)
        Specified by:
        removed in interface Analyzer
        Parameters:
        program - program to analyze
        set - AddressSet of locations that have been added
        monitor - monitor that indicates progress and indicates whether the user canceled the analysis
        log - a message log to record analysis information
        Returns:
        true if the analysis succeeded
        Throws:
        CancelledException
      • canAnalyze

        public boolean canAnalyze​(Program program)
        Description copied from interface: Analyzer
        Can this analyzer work on this program.
        Specified by:
        canAnalyze in interface Analyzer
        Parameters:
        program - program to be analyzed
        Returns:
        true if this analyzer can analyze this program
      • optionsChanged

        public void optionsChanged​(Options options,
                                   Program program)
        Description copied from interface: Analyzer
        Analyzers should initialize their options from the values in the given Options, providing appropriate default values.
        Specified by:
        optionsChanged in interface Analyzer
        Parameters:
        options - the program options/property list that contains the options
        program - program to be analyzed
      • analysisEnded

        public void analysisEnded​(Program program)
        Description copied from interface: Analyzer
        Called when an auto-analysis session ends. This notifies the analyzer so it can clean up any resources that only needed to be maintained during a single auto-analysis session.
        Specified by:
        analysisEnded in interface Analyzer
        Parameters:
        program - the program that was just completed being analyzed
      • isPrototype

        public final boolean isPrototype()
        Description copied from interface: Analyzer
        Returns true if this analyzer is a prototype.
        Specified by:
        isPrototype in interface Analyzer
        Returns:
        true if this analyzer is a prototype
      • registerOptions

        public void registerOptions​(Options options,
                                    Program program)
        Description copied from interface: Analyzer
        Analyzers should register their options with associated default value, help content and description
        Specified by:
        registerOptions in interface Analyzer
        Parameters:
        options - the program options/property list that contains the options
        program - program to be analyzed