/// <summary> /// Create the export for the given Groups /// </summary> /// <param name="gmdc"></param> /// <param name="groups"></param> /// <returns>The created Stream</returns> public System.IO.Stream Process(GeometryDataContainer gmdc, GmdcGroups groups) { this.gmdc = gmdc; LoadGroups(groups); return(this.FileContent.BaseStream); }
/// <summary> /// Create a clone of this Object /// </summary> /// <returns>The clone</returns> public override object Clone() { GmdcGroups list = new GmdcGroups(); foreach (GmdcGroup item in this) { list.Add(item); } return(list); }
/// <summary> /// Load the given Group Set /// </summary> /// <param name="groups"></param> void LoadGroups(GmdcGroups groups) { writer = new StreamWriter(new MemoryStream()); this.groups = groups; LoadSpecialElements(null); InitFile(); foreach (GmdcGroup g in groups) { LoadSpecialElements(g); if (group != null && vertex != null && link != null) { ProcessGroup(); } } FinishFile(); writer.Flush(); writer.BaseStream.Seek(0, SeekOrigin.Begin); }
/// <summary> /// Create a new Instance /// </summary> /// <param name="gmdc">The gmdc File you want to use</param> /// <param name="groups"></param> public AbstractGmdcExporter(GeometryDataContainer gmdc, GmdcGroups groups) : this() { this.gmdc = gmdc; LoadGroups(groups); }