Creates call stack object instance and (optionally) builds/traces stack.
AFirstAddr [in, optional]
Code address to add to stack. May be nil, which means do not add any additional items to stack.
AStackFrame [in, optional]
Specifies current stack pointer. This value indicate starting pointer to start tracing process. May be nil (default), which means use current stack pointer (i.e. trace entire stack).
ATopOfStack [in, optional]
Specifies top of the stack. This value indicate ending value for tracing process. May be nil (default), which means use current stack limits (i.e. trace entire stack).
Usually this value is not specified, unless you want to build call stack for another (external) thread.
AStartLevel [in, optional]
Indicates how many items (i.e. levels) should be skipped from start of call stack. Default is -1, which means "do not remove any items".
ALevelsNumber [in, optional]
Limits length (items' count) of call stack. Default is -1, which means "do not limit call stack".
ADebugDetails [in, optional]
Only store locations with this level of details. Default is [ddUnit, ddProcedure, ddSourceCode].
AThreadID [in, optional]
A thread ID (this is not thread handle).
Mark call stack items as belonging to the specified thread. Default is 0, which means current thread.
This argument is used to build call stack for another (external) thread.
ARunningThread [in, optional]
Set this argument to True when build call stacks manually. Value of False is used to indicate error (exception) thread. Default is True.
AGetDebugInfo [in, optional]
Retrieve debug information.
False - retrieve only RAW pointers; UnitName, ClassName, ProcedureName and LineNumber will be empty.
True - retrieve full information. Each possible property will be filled. This works slower.
AShowBeginCalls [in, optional]
For backward compatibility only. Always use False.
AAllowedMethods [in, optional]
This is object constructor, which creates instances of call stack.