TBaseMap class
Implements the base class for a map for unique IDs to arbitrary data.
Declaration
TBaseMap = class(TPersistent)Inheritance
- TBaseMap
- TPersistent
- TObject
Descends from it: TMap TTypedMap
Description
Implements the base class that is a map for unique IDs to arbitrary data. The ID-to-Data mapping is stored in an Average Level Binary Tree for fast indexing. The map also maintains a linked list between the ordered items for fast iteration through its elements. The ID can be signed or unsigned, with a size of 1, 2, 4, 8, 16 or 32 bytes. The data can be of any (constant) size.
Use a descendant class, such as TMap, which includes methods to Add items and to read or write their arbitrary data values.
Author: Marc Weustink
See also
Methods
LockMap | protected | Locks the Map when an iterator is added. |
UnLockMap | protected | Unlocks the Map when an iterator is removed. |
InternalAdd | protected | Adds a map item with the specified ID and Data to the AVL Tree. |
InternalGetData | protected | Gets the data stored in the specified map item. |
InternalGetDataPtr | protected | Gets a Pointer to the data for the specified map item. |
InternalGetId | protected | Get the ID value for the specified map item. |
InternalSetData | protected | Stores the data for the specified map item. |
ReleaseData | protected | Frees resources allocated for the data in the map item. |
Create | public | Constructor for the class instance. |
Clear | public | Clears all map items in the AVL Tree. |
Count | public | Gets the number of map items in the AVL Tree. |
Delete | public | Deletes the specified map item from the AVL Tree. |
Destroy | public | Destructor for the class instance. |
Inherited
From TPersistent (8)
Assign AssignTo DefineProperties FPOAttachObserver FPODetachObserver FPONotifyObservers GetNamePath GetOwner
From TObject (40)
AfterConstruction BeforeDestruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName SafeCallException StringMessageTable SystemHasExtendedRTTI ToString UnitName
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
