winIDEA SDK
test_get_source_location.py
1# This script is licensed under BSD License, see file LICENSE.txt.
2#
3# (c) TASKING Germany GmbH, 2023
4
5import isystem.connect as ic
6
7
8winidea_id = ''
9
10
11def test_getSourceLocation():
12 connMgr = ic.ConnectionMgr()
13 connMgr.connect(ic.CConnectionConfig().instanceId(winidea_id))
14
15 addCtrl = ic.CAddressController(connMgr)
16 search_criteria = ic.CLineDescription(ic.CLineDescription.E_RESOURCE_FUNCTION,
17 "main",
18 0, # start at the beginning of a function
19 True, # perform search
20 0, # no limit
21 ic.CLineDescription.E_SEARCH_CODE,
22 ic.CLineDescription.E_MATCH_PLAIN,
23 "target_init", # search pattern
24 0) # lineOffset
25 line_location = addCtrl.getSourceLocation(search_criteria)
26 msg = f"Location of function call target_init(): "
27 msg += f"{line_location.getFileName()}::{line_location.getLineNumber()}'"
28 print(msg)
29
30
31if __name__ == "__main__":
32 test_getSourceLocation()