IDA C++ SDK 9.2
Loading...
Searching...
No Matches
data_format_t Struct Reference

Information about a data format. More...

#include <bytes.hpp>

Public Member Functions

bool is_present_in_menus () const
 Should this format be shown in UI menus.
 bool (idaapi *print)(void *ud
 Convert to colored string.
 bool (idaapi *scan)(void *ud
 Convert from uncolored string.
 void (idaapi *analyze)(void *ud
 Analyze custom data format occurrence This callback can be used to create xrefs from the current item.
 DECLARE_COMPARISONS (data_format_t)

Public Attributes

int32 cbsize
 size of this structure
voidud
 user-defined data to be passed to callbacks
int props
 properties (currently 0)
const char * name
 Format name, must be unique.
const char * menu_name
 Visible format name to use in menus if nullptr, no menu item will be created.
const char * hotkey
 Hotkey for the corresponding menu item if nullptr, no hotkey will be associated with the menu item.
asize_t value_size
 size of the value in bytes 0 means any size is ok data formats that are registered for standard types (dtid 0) may be called with any value_size (instruction operands only)
int32 text_width
 Usual width of the text representation This value is used to calculate the width of the control to display values of this type.
qstringout
qstring const voidvalue
qstring const void asize_t size
qstring const void asize_t ea_t current_ea
qstring const void asize_t ea_t int operand_num
qstring const void asize_t ea_t int int dtid
bytevec_tvalue
bytevec_t const char * input
bytevec_t const char ea_t current_ea
bytevec_t const char ea_t int operand_num
bytevec_t const char ea_t int qstringerrstr
ea_t current_ea
ea_t int operand_num

Detailed Description

Information about a data format.

Member Function Documentation

◆ is_present_in_menus()

bool data_format_t::is_present_in_menus ( ) const
inline

Should this format be shown in UI menus.

Returns
success

◆ bool() [1/2]

data_format_t::bool ( idaapi * print)

Convert to colored string.

Parameters
uduser-defined data
outoutput buffer. may be nullptr
valuevalue to print. may not be nullptr
sizesize of value in 8-bit bytes
current_eacurrent address (BADADDR if unknown)
operand_numcurrent operand number
dtidcustom data type id (0-standard built-in data type)
Returns
success

◆ bool() [2/2]

data_format_t::bool ( idaapi * scan)

Convert from uncolored string.

Parameters
uduser-defined data
valueoutput buffer. may be nullptr
inputinput string. may not be nullptr
current_eacurrent address (BADADDR if unknown)
operand_numcurrent operand number (-1 if unknown)
errstrbuffer for error message
Returns
success

◆ void()

data_format_t::void ( idaapi * analyze)

Analyze custom data format occurrence This callback can be used to create xrefs from the current item.

This callback may be missing.

Parameters
uduser-defined data
current_eacurrent address (BADADDR if unknown)
operand_numcurrent operand number

◆ DECLARE_COMPARISONS()

data_format_t::DECLARE_COMPARISONS ( data_format_t )

Member Data Documentation

◆ cbsize

int32 data_format_t::cbsize

size of this structure

◆ ud

void* data_format_t::ud

user-defined data to be passed to callbacks

◆ props

int data_format_t::props

properties (currently 0)

◆ name

const char* data_format_t::name

Format name, must be unique.

◆ menu_name

const char* data_format_t::menu_name

Visible format name to use in menus if nullptr, no menu item will be created.

◆ hotkey

const char* data_format_t::hotkey

Hotkey for the corresponding menu item if nullptr, no hotkey will be associated with the menu item.

◆ value_size

asize_t data_format_t::value_size

size of the value in bytes 0 means any size is ok data formats that are registered for standard types (dtid 0) may be called with any value_size (instruction operands only)

◆ text_width

int32 data_format_t::text_width

Usual width of the text representation This value is used to calculate the width of the control to display values of this type.

◆ out

qstring* data_format_t::out

◆ value [1/2]

qstring const void* data_format_t::value

◆ size

qstring const void asize_t data_format_t::size

◆ current_ea [1/3]

qstring const void asize_t ea_t data_format_t::current_ea

◆ operand_num [1/3]

qstring const void asize_t ea_t int data_format_t::operand_num

◆ dtid

qstring const void asize_t ea_t int int data_format_t::dtid

◆ value [2/2]

bytevec_t* data_format_t::value

◆ input

bytevec_t const char* data_format_t::input

◆ current_ea [2/3]

bytevec_t const char ea_t data_format_t::current_ea

◆ operand_num [2/3]

bytevec_t const char ea_t int data_format_t::operand_num

◆ errstr

bytevec_t const char ea_t int qstring* data_format_t::errstr

◆ current_ea [3/3]

ea_t data_format_t::current_ea

◆ operand_num [3/3]

ea_t int data_format_t::operand_num

The documentation for this struct was generated from the following file: