| 
    IDA SDK
    
   | 
 
Implements the core behavior of a custom fixup.
Public Attributes | |
| int32 | cbsize | 
| size of this structure  | |
| const char * | name | 
| Format name, must be unique.  | |
| uint32 | props | 
| Fixup handler properties  | |
| uint8 | size | 
| The examples below show how these options work.  More... | |
| uint8 | width | 
| number of significant bits before shifting  | |
| uint8 | shift | 
| number of bits to shift right before patching.  More... | |
| uint8 | rsrv4 | 
| uint32 | reftype | 
| reference info type and flags, std_apply() produces an offset of this type  | |
| bool(idaapi * | apply )(const fixup_handler_t *fh, ea_t item_ea, ea_t fixup_ea, int opnum, bool is_macro, const fixup_data_t &fd) | 
| Apply a fixup: take it into account while analyzing the file.  More... | |
| uval_t(idaapi * | get_value )(const fixup_handler_t *fh, ea_t ea) | 
| Get the operand value.  More... | |
| bool(idaapi * | patch_value )(const fixup_handler_t *fh, ea_t ea, const fixup_data_t &fd) | 
| Patch the fixup bytes.  More... | |
Public Member Functions | |
| bool | is_signed () const | 
| Is the operand value signed?  | |
| bool(idaapi * fixup_handler_t::apply) (const fixup_handler_t *fh, ea_t item_ea, ea_t fixup_ea, int opnum, bool is_macro, const fixup_data_t &fd) | 
Apply a fixup: take it into account while analyzing the file.
Usually it consists of converting the operand into an offset expression.
| uval_t(idaapi * fixup_handler_t::get_value) (const fixup_handler_t *fh, ea_t ea) | 
Get the operand value.
This callback is called from get_fixup_value().
| bool(idaapi * fixup_handler_t::patch_value) (const fixup_handler_t *fh, ea_t ea, const fixup_data_t &fd) | 
Patch the fixup bytes.
This callback is called from patch_fixup_value() or after changing the fixup (e.g. after it was moved from one location to another). If this callback is not specified then std_patch_value() is used.
| false | the fixup bytes do not fit. The database is changed even in this case. |