IDA C++ SDK 9.2
Loading...
Searching...
No Matches
qflow_chart_t Class Reference

A flow chart for a function, or a set of address ranges. More...

#include <gdl.hpp>

Inheritance diagram for qflow_chart_t:
cancellable_graph_t gdl_graph_t

Public Types

typedef qvector< qbasic_block_tblocks_t

Public Member Functions

 DECLARE_HELPER (friend) qstring title
idaapi qflow_chart_t (void)
idaapi qflow_chart_t (const char *_title, func_t *_pfn, ea_t _ea1, ea_t _ea2, int _flags)
virtual ~qflow_chart_t ()
void idaapi create (const char *_title, func_t *_pfn, ea_t _ea1, ea_t _ea2, int _flags)
void idaapi create (const char *_title, const rangevec_t &ranges, int _flags)
void idaapi append_to_flowchart (ea_t ea1, ea_t ea2)
void idaapi refresh (void)
fc_block_type_t calc_block_type (size_t blknum) const
bool is_ret_block (size_t blknum) const
bool is_noret_block (size_t blknum) const
virtual void idaapi print_node_attributes (FILE *fp, int n) const override
virtual int idaapi nsucc (int node) const override
virtual int idaapi npred (int node) const override
virtual int idaapi succ (int node, int i) const override
virtual int idaapi pred (int node, int i) const override
virtual char *idaapi get_node_label (char *iobuf, int iobufsize, int n) const override
virtual int idaapi size (void) const override
bool idaapi print_names (void) const
Public Member Functions inherited from cancellable_graph_t
virtual ~cancellable_graph_t ()
bool idaapi check_cancel (void) const
Public Member Functions inherited from gdl_graph_t
 DEFINE_MEMORY_ALLOCATION_FUNCS () virtual ~gdl_graph_t()
virtual void idaapi print_graph_attributes (FILE *fp) const
virtual bool idaapi print_node (FILE *fp, int n) const
virtual bool idaapi print_edge (FILE *fp, int i, int j) const
virtual int idaapi node_qty (void) const
virtual bool idaapi exists (int node) const
virtual int idaapi entry (void) const
virtual int idaapi exit (void) const
virtual bool idaapi empty (void) const
virtual bgcolor_t idaapi get_node_color (int n) const
virtual bgcolor_t idaapi get_edge_color (int i, int j) const
void idaapi gen_gdl (FILE *fp) const
void idaapi gen_gdl (const char *file) const
size_t idaapi nedge (int node, bool ispred) const
int idaapi edge (int node, int i, bool ispred) const
int idaapi front (void)
node_iterator idaapi begin (void) const
node_iterator idaapi end (void) const
bool idaapi path_exists (int m, int n) const
void idaapi gen_dot (FILE *fp) const
void idaapi gen_dot (const char *file) const

Public Attributes

range_t bounds
 overall bounds of the qflow_chart_t instance
func_tpfn = nullptr
 the function this instance was built upon
int flags = 0
 flags. See Flow chart flags
blocks_t blocks
 basic blocks
int nproper = 0
 number of basic blocks belonging to the specified range
Public Attributes inherited from cancellable_graph_t
bool cancelled = false
char padding [3]

Detailed Description

A flow chart for a function, or a set of address ranges.

Member Typedef Documentation

◆ blocks_t

Constructor & Destructor Documentation

◆ qflow_chart_t() [1/2]

idaapi qflow_chart_t::qflow_chart_t ( void )
inline

◆ qflow_chart_t() [2/2]

idaapi qflow_chart_t::qflow_chart_t ( const char * _title,
func_t * _pfn,
ea_t _ea1,
ea_t _ea2,
int _flags )
inline

◆ ~qflow_chart_t()

virtual qflow_chart_t::~qflow_chart_t ( )
inlinevirtual

Member Function Documentation

◆ DECLARE_HELPER()

qflow_chart_t::DECLARE_HELPER ( friend )

◆ create() [1/2]

void idaapi qflow_chart_t::create ( const char * _title,
func_t * _pfn,
ea_t _ea1,
ea_t _ea2,
int _flags )
inline

◆ create() [2/2]

void idaapi qflow_chart_t::create ( const char * _title,
const rangevec_t & ranges,
int _flags )
inline

◆ append_to_flowchart()

void idaapi qflow_chart_t::append_to_flowchart ( ea_t ea1,
ea_t ea2 )
inline

◆ refresh()

void idaapi qflow_chart_t::refresh ( void )
inline

◆ calc_block_type()

fc_block_type_t qflow_chart_t::calc_block_type ( size_t blknum) const
inline

◆ is_ret_block()

bool qflow_chart_t::is_ret_block ( size_t blknum) const
inline

◆ is_noret_block()

bool qflow_chart_t::is_noret_block ( size_t blknum) const
inline

◆ print_node_attributes()

virtual void idaapi qflow_chart_t::print_node_attributes ( FILE * fp,
int n ) const
inlineoverridevirtual

Reimplemented from gdl_graph_t.

◆ nsucc()

virtual int idaapi qflow_chart_t::nsucc ( int node) const
inlineoverridevirtual

Implements gdl_graph_t.

◆ npred()

virtual int idaapi qflow_chart_t::npred ( int node) const
inlineoverridevirtual

Implements gdl_graph_t.

◆ succ()

virtual int idaapi qflow_chart_t::succ ( int node,
int i ) const
inlineoverridevirtual

Implements gdl_graph_t.

◆ pred()

virtual int idaapi qflow_chart_t::pred ( int node,
int i ) const
inlineoverridevirtual

Implements gdl_graph_t.

◆ get_node_label()

virtual char *idaapi qflow_chart_t::get_node_label ( char * iobuf,
int iobufsize,
int n ) const
inlineoverridevirtual

Reimplemented from gdl_graph_t.

◆ size()

virtual int idaapi qflow_chart_t::size ( void ) const
inlineoverridevirtual

Implements gdl_graph_t.

◆ print_names()

bool idaapi qflow_chart_t::print_names ( void ) const
inline

Member Data Documentation

◆ bounds

range_t qflow_chart_t::bounds

overall bounds of the qflow_chart_t instance

◆ pfn

func_t* qflow_chart_t::pfn = nullptr

the function this instance was built upon

◆ flags

int qflow_chart_t::flags = 0

flags. See Flow chart flags

◆ blocks

blocks_t qflow_chart_t::blocks

basic blocks

◆ nproper

int qflow_chart_t::nproper = 0

number of basic blocks belonging to the specified range


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