If storing a large amount of data in each span, consider instead one of the NetworkDataT classes. This class is a light-weight version of the NetworkDataT implementation.
It does fast lookup in a dictionary of span-id's, containing a list of spans for each id, and it does linear searching in the chainages.
public class EngineReachMap| EngineReachMap | Initializes a new instance of the EngineReachMap class |
| Add(ILocationSpan, EngineReach) | Add to map |
| Add(String, EngineReach) | Add to map |
| Equals | Determines whether the specified object is equal to the current object. (Inherited from Object) |
| Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object) |
| Find(ILocation) |
Find data based on the provided location.
It will first search without chainage tolerance, and if none found, search using tolerance of LOCATION_EQUAL_TOLERANCE. |
| Find(String) | Find data based on the provided reach id. If more than span exist with the same reachId, the first found is returned. |
| Find(ILocation, Double) | Find data based on the provided location. |
| FindAll | Find data based on the provided location. |
| GetHashCode | Serves as the default hash function. (Inherited from Object) |
| GetType | Gets the Type of the current instance. (Inherited from Object) |
| MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object) |
| Sort | Sort reaches with the same name on start chainage |
| ToString | Returns a string that represents the current object. (Inherited from Object) |