public FlatToHierarchicalProgressMonitor(string prefix, FlatProgressMonitor flat)
        {
            parent = null;
            this.flat = new FilteredFlatProgressMonitor(flat);

            if (!string.IsNullOrEmpty(prefix))
                fullStepName = new[] { prefix, null };
            else
                fullStepName = new string[] { null };
        }
 private FlatToHierarchicalProgressMonitor(FlatToHierarchicalProgressMonitor parent, string[] name)
 {
     this.parent = parent;
     flat = parent.flat;
     fullStepName = Utils.ArrayAppendEmpty(name, 1);
 }