xref: /haiku/src/kits/debugger/dwarf/CfaRuleSet.h (revision 7457ccb4b2f4786525d3b7bda42598487d57ab7d)
1 /*
2  * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de.
3  * Distributed under the terms of the MIT License.
4  */
5 #ifndef CFA_RULE_SET_H
6 #define CFA_RULE_SET_H
7 
8 
9 #include "CfaRule.h"
10 
11 
12 class CfaRuleSet {
13 public:
14 								CfaRuleSet();
15 								~CfaRuleSet();
16 
17 			status_t			Init(uint32 registerCount);
18 			CfaRuleSet*			Clone() const;
19 
20 			CfaCfaRule*			GetCfaCfaRule()			{ return &fCfaCfaRule; }
21 			const CfaCfaRule*	GetCfaCfaRule() const	{ return &fCfaCfaRule; }
22 
23 			CfaRule*			RegisterRule(uint32 index) const;
24 
25 private:
26 			CfaCfaRule			fCfaCfaRule;
27 			CfaRule*			fRegisterRules;
28 			uint32				fRegisterCount;
29 };
30 
31 
32 #endif	// CFA_RULE_SET_H
33