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