2 * Copyright 2011, Ingo Weinhold, ingo_weinhold@gmx.de.
3 * Distributed under the terms of the MIT License.
10 #include "NodeListener.h"
13 template<typename Policy
> class GenericIndexIterator
;
16 class NameIndex
: public Index
, private NodeListener
{
21 status_t
Init(Volume
* volume
);
23 virtual int32
CountEntries() const;
26 virtual void NodeAdded(Node
* node
);
27 virtual void NodeRemoved(Node
* node
);
28 virtual void NodeChanged(Node
* node
, uint32 statFields
,
29 const OldNodeAttributes
& oldAttributes
);
32 virtual AbstractIndexIterator
* InternalGetIterator();
33 virtual AbstractIndexIterator
* InternalFind(const void* key
,
38 struct IteratorPolicy
;
41 friend struct IteratorPolicy
;
43 void _UpdateLiveQueries(Node
* entry
,
44 const char* oldName
, const char* newName
);
51 #endif // NAME_INDEX_H