public List <MappedMirnaGroup> ReadFromFile(string fileName) { List <MappedMirnaGroup> result = new List <MappedMirnaGroup>(); XElement root = XElement.Load(fileName); var qmmap = root.ToSAMAlignedItems().ToSAMAlignedLocationMap(); foreach (var mirnaGroupEle in root.Element("mirnas").Elements("mirnagroup")) { var group = new MappedMirnaGroup(); result.Add(group); foreach (var mirnaEle in mirnaGroupEle.Elements("mirna")) { var mirna = new MappedMirna(); group.Add(mirna); mirna.Name = mirnaEle.Attribute("name").Value; mirna.Sequence = mirnaEle.Attribute("sequence").Value; foreach (var regionEle in mirnaEle.Elements("region")) { var region = new MappedMirnaRegion(); mirna.MappedRegions.Add(region); region.Region.Name = mirna.Name; ParseLocation(regionEle, region.Region); foreach (var posEle in regionEle.Elements("position")) { var position = new SequenceRegionMapped(); position.Region = region.Region; position.Offset = int.Parse(posEle.Attribute("offset").Value); region.Mapped[position.Offset] = position; foreach (var queryEle in posEle.Elements("query")) { var qname = queryEle.Attribute("qname").Value; var loc = queryEle.Attribute("loc").Value; var key = GenerateKey(qname, loc); var query = qmmap[key]; position.AlignedLocations.Add(query); query.Features.Add(region.Region); } } } } } qmmap.Clear(); return(result); }
public MappedMirnaRegion FindOrCreateRegion(string loc) { foreach (var region in MappedRegions) { if (region.Region.GetLocation().Equals(loc)) { return region; } } var result = new MappedMirnaRegion(); result.Region = SequenceRegionUtils.ParseLocation<SequenceRegion>(loc); this.MappedRegions.Add(result); return result; }
public MappedMirnaRegion FindOrCreateRegion(string loc) { foreach (var region in MappedRegions) { if (region.Region.GetLocation().Equals(loc)) { return(region); } } var result = new MappedMirnaRegion(); result.Region = SequenceRegionUtils.ParseLocation <SequenceRegion>(loc); this.MappedRegions.Add(result); return(result); }
private void FindLocation(List<SAMAlignedLocation> list, List<MappedMirnaRegion> list_2, out SAMAlignedLocation loc, out MappedMirnaRegion reg) { throw new NotImplementedException(); }
private void FindLocation(List <SAMAlignedLocation> list, List <MappedMirnaRegion> list_2, out SAMAlignedLocation loc, out MappedMirnaRegion reg) { throw new NotImplementedException(); }