A set of integers, often used to represent positions on biological sequences.

Namespace:  BioSharp.Core.Bio.Symbol
Assembly:  BioSharp.Core (in BioSharp.Core.dll) Version: 0.1.3191.26120 (


public interface ILocation


The location will contain some indices between Min and tMax inclusive. It is not required to contain all indices within this range. It is meant to contain the indices returned by the Min or Max. In the event that an operation would produce an invalid or nonsensical range, Location.Empty should be returned.

Location objects are always immutable.

Locations can be constructed in a number of ways:

Location l1 = LocationTools.makeLocation(10, 20);  // Makes a RangeLocation
Location l2 = LocationTools.makeLocation(25, 25);  // Makes a PointLocation
Location l3 = LocationTools.union(l1, l2); // Construct a non-contiguous
                                           // location containing the
                                           // points from l1 and l2

In Java, this is implemented as an interface with a couple of nested objects. That is not allowed in .Net, so the nested objects are broken out to the Location class.

Original BioJava version by Matthew Pocock and Thomas Down. Port to C# by Doug Swisher.

See Also