public PipelineGraph(PluginGraph pluginGraph, IInstanceGraph instances, IPipelineGraph root, IObjectCache singletons, IObjectCache transients) { _pluginGraph = pluginGraph; _instances = instances; if (root == null) { _root = this; _profiles = new Profiles(_pluginGraph, this); } else { _root = root.Root(); _profiles = root.Profiles; } _singletons = singletons; _transients = transients; }