1*f6dc9357SAndroid Build Coastguard Worker // MyMap.h 2*f6dc9357SAndroid Build Coastguard Worker 3*f6dc9357SAndroid Build Coastguard Worker #ifndef ZIP7_INC_COMMON_MY_MAP_H 4*f6dc9357SAndroid Build Coastguard Worker #define ZIP7_INC_COMMON_MY_MAP_H 5*f6dc9357SAndroid Build Coastguard Worker 6*f6dc9357SAndroid Build Coastguard Worker #include "MyTypes.h" 7*f6dc9357SAndroid Build Coastguard Worker #include "MyVector.h" 8*f6dc9357SAndroid Build Coastguard Worker 9*f6dc9357SAndroid Build Coastguard Worker class CMap32 10*f6dc9357SAndroid Build Coastguard Worker { 11*f6dc9357SAndroid Build Coastguard Worker struct CNode 12*f6dc9357SAndroid Build Coastguard Worker { 13*f6dc9357SAndroid Build Coastguard Worker UInt32 Key; 14*f6dc9357SAndroid Build Coastguard Worker UInt32 Keys[2]; 15*f6dc9357SAndroid Build Coastguard Worker UInt32 Values[2]; 16*f6dc9357SAndroid Build Coastguard Worker UInt16 Len; 17*f6dc9357SAndroid Build Coastguard Worker Byte IsLeaf[2]; 18*f6dc9357SAndroid Build Coastguard Worker }; 19*f6dc9357SAndroid Build Coastguard Worker CRecordVector<CNode> Nodes; 20*f6dc9357SAndroid Build Coastguard Worker 21*f6dc9357SAndroid Build Coastguard Worker public: 22*f6dc9357SAndroid Build Coastguard Worker Clear()23*f6dc9357SAndroid Build Coastguard Worker void Clear() { Nodes.Clear(); } 24*f6dc9357SAndroid Build Coastguard Worker bool Find(UInt32 key, UInt32 &valueRes) const throw(); 25*f6dc9357SAndroid Build Coastguard Worker bool Set(UInt32 key, UInt32 value); // returns true, if there is such key already 26*f6dc9357SAndroid Build Coastguard Worker }; 27*f6dc9357SAndroid Build Coastguard Worker 28*f6dc9357SAndroid Build Coastguard Worker #endif 29