How can I get the source file name and current line number insideexecuted C-function
I implemented some Python functions in my C/C++ code. I need to know the Python source file name and line number of just executed
Python command which calls my function.
How can I get this information inside my C/C++ function?
Thanks for any help.
Re: How can I get the source file name and current line number inside executed C-function
Below is a function to find the caller's file name, line number, etc.
inside Python. Maybe this works for your case.
- import traceback
- def caller(up=0):
- '''Get file name, line number, function name and
- source text of the caller's caller as 4-tuple:
- (file, line, func, text).
- The optional argument 'up' allows retrieval of
- a caller further back up into the call stack.
- Note, the source text may be None and function
- name may be '?' in the returned result. In
- Python 2.3+ the file name may be an absolute
- try: # just get a few frames
- f = traceback.extract_stack(limit=up+2)
- if f:
- return f
- if __debug__:
- # running with psyco?
- return ('', 0, '', None)
- if __name__ == '__main__':
- print caller()
Marek Prerovsky wrote:
> I implemented some Python functions in my C/C++ code. I need to know
the Python source file name and line number of just executed
> Python command which calls my function.
> How can I get this information inside my C/C++ function?
> Thanks for any help.
|All times are GMT. The time now is 01:38 AM.|
Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.