/// <summary> /// Gets all pipeline element diagnostics within a pipeline diagnostics (and all descendant subpipelines). /// </summary> /// <param name="pipeline">Root pipeline diagnostics.</param> /// <returns>Collection of all pipeline element diagnostics within.</returns> public static IEnumerable <PipelineDiagnostics.PipelineElementDiagnostics> GetAllPipelineElementDiagnostics(this PipelineDiagnostics pipeline) { return(pipeline.GetAllPipelineDiagnostics().GetAllPipelineElements()); }
/// <summary> /// Gets all emitter diagnostics within a pipeline diagnostics (and all descendant subpipelines). /// </summary> /// <param name="pipeline">Root pipeline diagnostics.</param> /// <returns>Collection of all emitter diagnostics within.</returns> public static IEnumerable <PipelineDiagnostics.EmitterDiagnostics> GetAllEmitterDiagnostics(this PipelineDiagnostics pipeline) { return(pipeline.GetAllPipelineDiagnostics().GetAllEmitterDiagnostics()); }
/// <summary> /// Gets count of pipelines. /// </summary> /// <param name="pipeline">Root pipeline diagnostics.</param> /// <param name="predicate">Predicate expression filtering pipeline diagnostics.</param> /// <returns>Pipeline count.</returns> public static int GetPipelineCount(this PipelineDiagnostics pipeline, Func <PipelineDiagnostics, bool> predicate = null) { return(pipeline.GetAllPipelineDiagnostics().Where(p => predicate == null ? true : predicate(p)).Count()); }