1/*
2 * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Distributed under the terms of the MIT License.
4 */
5#ifndef STACK_TRACE_H
6#define STACK_TRACE_H
7
8#include <ObjectList.h>
9
10#include "StackFrame.h"
11
12
13class StackTrace : public BReferenceable {
14public:
15								StackTrace();
16	virtual						~StackTrace();
17
18			bool				AddFrame(StackFrame* frame);
19									// takes over reference (also on error)
20
21			int32				CountFrames() const;
22			StackFrame*			FrameAt(int32 index) const;
23
24private:
25			typedef BObjectList<StackFrame> StackFrameList;
26
27private:
28			StackFrameList		fStackFrames;
29};
30
31
32#endif	// STACK_TRACE_H
33