xref: /haiku/src/add-ons/kernel/file_systems/ramfs/AttributeIndex.h (revision b9795faf5d27edaf49acb9f884ba181c0f0ae66b)
1 /*
2  * Copyright 2007, Ingo Weinhold, ingo_weinhold@gmx.de.
3  * All rights reserved. Distributed under the terms of the MIT license.
4  */
5 #ifndef ATTRIBUTE_INDEX_H
6 #define ATTRIBUTE_INDEX_H
7 
8 #include "Index.h"
9 
10 class Attribute;
11 
12 class AttributeIndex : public Index {
13 public:
14 	AttributeIndex(Volume *volume, const char *name, uint32 type,
15 				   bool fixedKeyLength, size_t keyLength = 0);
16 	virtual ~AttributeIndex();
17 
18 	virtual status_t Added(Attribute *attribute) = 0;
19 	virtual bool Removed(Attribute *attribute) = 0;
20 	virtual status_t Changed(Attribute *attribute,
21 							 const uint8 *oldKey, size_t length) = 0;
22 };
23 
24 #endif	// ATTRIBUTE_INDEX_H
25