State-of-the-art binary code analysis tools

Detailed Description

Information about a data type.

Public Attributes

int cbsize
 size of this structure
 
void * ud
 user-defined data to be passed to callbacks
 
int props
 properties
 
const char * name
 name of the data type. must be unique
 
const char * menu_name
 Visible data type 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.
 
const char * asm_keyword
 keyword to use for this type in the assembly if nullptr, the data type cannot be used in the listing it can still be used in cpuregs window
 
asize_t value_size
 size of the value in bytes
 
bool(idaapi * may_create_at )(void *ud, ea_t ea, size_t nbytes)
 May create data? nullptr means always may. More...
 
asize_t(idaapi * calc_item_size )(void *ud, ea_t ea, asize_t maxsize)
 This function is used to determine size of the (possible) item at 'ea'. More...
 

Public Member Functions

bool is_present_in_menus () const
 Should this type be shown in UI menus. More...
 

Member Function Documentation

◆ is_present_in_menus()

bool data_type_t::is_present_in_menus ( ) const
inline

Should this type be shown in UI menus.

Returns
success

Member Data Documentation

◆ may_create_at

bool(idaapi * data_type_t::may_create_at) (void *ud, ea_t ea, size_t nbytes)

May create data? nullptr means always may.

Parameters
uduser-defined data
eaaddress of the future item
nbytessize of the future item

◆ calc_item_size

asize_t(idaapi * data_type_t::calc_item_size) (void *ud, ea_t ea, asize_t maxsize)

This function is used to determine size of the (possible) item at 'ea'.

This callback is required only for varsize datatypes.

Parameters
uduser-defined data
eaaddress of the item
maxsizemaximal size of the item
Returns
0 if no such item can be created/displayed

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