Package ghidra.program.model.data
Class DataTypeWriter
- java.lang.Object
-
- ghidra.program.model.data.DataTypeWriter
-
public class DataTypeWriter extends java.lang.Object
A class used to convert data types into ANSI-C. The ANSI-C code should compile on most platforms.
-
-
Constructor Summary
Constructors Constructor Description DataTypeWriter(DataTypeManager dtm, java.io.Writer writer)
Constructs a new instance of this class using the given writer.DataTypeWriter(DataTypeManager dtm, java.io.Writer writer, boolean cppStyleComments)
Constructs a new instance of this class using the given writer.DataTypeWriter(DataTypeManager dtm, java.io.Writer writer, AnnotationHandler annotator)
Constructs a new instance of this class using the given writer and annotation handlerDataTypeWriter(DataTypeManager dtm, java.io.Writer writer, AnnotationHandler annotator, boolean cppStyleComments)
Constructs a new instance of this class using the given writer and annotation handler
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
write(Category category, TaskMonitor monitor)
Converts all data types in the category into ANSI-C code.void
write(DataType[] dataTypes, TaskMonitor monitor)
Converts all data types in the array into ANSI-C code.void
write(DataTypeManager dataTypeManager, TaskMonitor monitor)
Converts all data types in the data type manager into ANSI-C code.void
write(java.util.List<DataType> dataTypes, TaskMonitor monitor)
Converts all data types in the list into ANSI-C code.void
write(java.util.List<DataType> dataTypes, TaskMonitor monitor, boolean throwExceptionOnInvalidType)
-
-
-
Constructor Detail
-
DataTypeWriter
public DataTypeWriter(DataTypeManager dtm, java.io.Writer writer) throws java.io.IOException
Constructs a new instance of this class using the given writer. The default annotation handler is used.- Parameters:
dtm
- data-type manager corresponding to target program or null for defaultwriter
- the writer to use when writing data types- Throws:
java.io.IOException
- if there is an exception writing the output
-
DataTypeWriter
public DataTypeWriter(DataTypeManager dtm, java.io.Writer writer, boolean cppStyleComments) throws java.io.IOException
Constructs a new instance of this class using the given writer. The default annotation handler is used.- Parameters:
dtm
- data-type manager corresponding to target program or null for defaultwriter
- the writer to use when writing data typescppStyleComments
- whether to use C++ style comments- Throws:
java.io.IOException
- if there is an exception writing the output
-
DataTypeWriter
public DataTypeWriter(DataTypeManager dtm, java.io.Writer writer, AnnotationHandler annotator) throws java.io.IOException
Constructs a new instance of this class using the given writer and annotation handler- Parameters:
dtm
- data-type manager corresponding to target program or null for defaultwriter
- the writer to use when writing data typesannotator
- the annotation handler to use to annotate the data types- Throws:
java.io.IOException
- if there is an exception writing the output
-
DataTypeWriter
public DataTypeWriter(DataTypeManager dtm, java.io.Writer writer, AnnotationHandler annotator, boolean cppStyleComments) throws java.io.IOException
Constructs a new instance of this class using the given writer and annotation handler- Parameters:
dtm
- data-type manager corresponding to target program or null for defaultwriter
- the writer to use when writing data typesannotator
- the annotation handler to use to annotate the data typescppStyleComments
- whether to use C++ style comments- Throws:
java.io.IOException
- if there is an exception writing the output
-
-
Method Detail
-
write
public void write(DataTypeManager dataTypeManager, TaskMonitor monitor) throws java.io.IOException, CancelledException
Converts all data types in the data type manager into ANSI-C code.- Parameters:
dataTypeManager
- the manager containing the data types to writemonitor
- the task monitor- Throws:
java.io.IOException
- if there is an exception writing the outputCancelledException
- if the action is cancelled by the user
-
write
public void write(Category category, TaskMonitor monitor) throws java.io.IOException, CancelledException
Converts all data types in the category into ANSI-C code.- Parameters:
category
- the category containing the datatypes to writemonitor
- the task monitor- Throws:
java.io.IOException
- if there is an exception writing the outputCancelledException
- if the action is cancelled by the user
-
write
public void write(DataType[] dataTypes, TaskMonitor monitor) throws java.io.IOException, CancelledException
Converts all data types in the array into ANSI-C code.- Parameters:
dataTypes
- the data types to writemonitor
- the task monitor- Throws:
java.io.IOException
- if there is an exception writing the outputCancelledException
- if the action is cancelled by the user
-
write
public void write(java.util.List<DataType> dataTypes, TaskMonitor monitor) throws java.io.IOException, CancelledException
Converts all data types in the list into ANSI-C code.- Parameters:
dataTypes
- the data types to writemonitor
- the task monitor- Throws:
java.io.IOException
- if there is an exception writing the outputCancelledException
- if the action is cancelled by the user
-
write
public void write(java.util.List<DataType> dataTypes, TaskMonitor monitor, boolean throwExceptionOnInvalidType) throws java.io.IOException, CancelledException
- Throws:
java.io.IOException
CancelledException
-
-