Ghidra Decompiler Analysis Engine
Public Member Functions | List of all members
RawBinaryArchitectureCapability Class Reference

Extension point for building an Architecture that reads in raw images. More...

#include <raw_arch.hh>

Inheritance diagram for RawBinaryArchitectureCapability:
Inheritance graph
[legend]
Collaboration diagram for RawBinaryArchitectureCapability:
Collaboration graph
[legend]

Public Member Functions

virtual ArchitecturebuildArchitecture (const string &filename, const string &target, ostream *estream)
 Build an Architecture given a raw file or data. More...
 
virtual bool isFileMatch (const string &filename) const
 Determine if this extension can handle this file. More...
 
virtual bool isXmlMatch (Document *doc) const
 Determine is this extension can handle this XML document. More...
 
- Public Member Functions inherited from ArchitectureCapability
virtual void initialize (void)
 Do specialized initialization. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from ArchitectureCapability
static ArchitectureCapabilityfindCapability (const string &filename)
 Find an extension to process a file. More...
 
static ArchitectureCapabilityfindCapability (Document *doc)
 Find an extension to process an XML document. More...
 
static ArchitectureCapabilitygetCapability (const string &name)
 Get a capability by name. More...
 
static void sortCapabilities (void)
 Sort extensions. More...
 
- Static Public Member Functions inherited from CapabilityPoint
static void initializeAll (void)
 Finish initialization for all extension points. More...
 
- Protected Member Functions inherited from CapabilityPoint
 CapabilityPoint (void)
 Construct extension capability exactly once. More...
 
- Protected Attributes inherited from ArchitectureCapability
string name
 Identifier for this capability.
 

Detailed Description

Extension point for building an Architecture that reads in raw images.

Member Function Documentation

◆ buildArchitecture()

Architecture * RawBinaryArchitectureCapability::buildArchitecture ( const string &  filename,
const string &  target,
ostream *  estream 
)
virtual

Build an Architecture given a raw file or data.

This is implemented by each separate extension. The method is handed a filename and possibly external target information and must build the Architecture object, initializing all the major subcomponents, using just this info.

Parameters
filenameis the path to the executable file to examine
targetif non-empty is a language id string
estreamis an output stream for error messages

Implements ArchitectureCapability.

◆ isFileMatch()

bool RawBinaryArchitectureCapability::isFileMatch ( const string &  filename) const
virtual

Determine if this extension can handle this file.

Parameters
filenameis the name of the file to examine
Returns
true is this extension is suitable for analyzing the file

Implements ArchitectureCapability.

◆ isXmlMatch()

bool RawBinaryArchitectureCapability::isXmlMatch ( Document doc) const
virtual

Determine is this extension can handle this XML document.

If a file to analyze is XML based, this method examines the XML parse to determine if this extension can understand the document

Parameters
docis the parsed XML document
Returns
true if this extension understands the XML

Implements ArchitectureCapability.


The documentation for this class was generated from the following files: