Provides instantaneous analysis state information and a list of current functions under analysis (read-only). All times are given in units of milliseconds (ms). Per-function `analysis_time` is the aggregation of time spent performing incremental updates and is reset on a full function update. Pe
(self)
| 3344 | |
| 3345 | @property |
| 3346 | def analysis_info(self) -> AnalysisInfo: |
| 3347 | """Provides instantaneous analysis state information and a list of current functions under analysis (read-only). |
| 3348 | All times are given in units of milliseconds (ms). Per-function `analysis_time` is the aggregation of time spent |
| 3349 | performing incremental updates and is reset on a full function update. Per-function `update_count` tracks the |
| 3350 | current number of incremental updates and is reset on a full function update. Per-function `submit_count` tracks the |
| 3351 | current number of full updates that have completed. |
| 3352 | |
| 3353 | .. note:: `submit_count` is currently not reset across analysis updates. |
| 3354 | |
| 3355 | """ |
| 3356 | info_ref = core.BNGetAnalysisInfo(self.handle) |
| 3357 | assert info_ref is not None, "core.BNGetAnalysisInfo returned None" |
| 3358 | info = info_ref[0] |
| 3359 | active_info_list: List[ActiveAnalysisInfo] = [] |
| 3360 | try: |
| 3361 | for i in range(0, info.count): |
| 3362 | func = _function.Function(self, core.BNNewFunctionReference(info.activeInfo[i].func)) |
| 3363 | active_info = ActiveAnalysisInfo( |
| 3364 | func, info.activeInfo[i].analysisTime, info.activeInfo[i].updateCount, |
| 3365 | info.activeInfo[i].submitCount |
| 3366 | ) |
| 3367 | active_info_list.append(active_info) |
| 3368 | return AnalysisInfo(info.state, info.analysisTime, active_info_list) |
| 3369 | finally: |
| 3370 | core.BNFreeAnalysisInfo(info_ref) |
| 3371 | |
| 3372 | @property |
| 3373 | def analysis_progress(self) -> AnalysisProgress: |
nothing calls this directly
no test coverage detected