IDA C++ SDK 9.4
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
void * ud
 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.
qstring * out
qstring const void * value
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_t * value
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 qstring * errstr
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:
  • /Users/geoffrey/ida-sdk/src/include/bytes.hpp