/// <summary>
        /// Goes through all the vertices in the experiment graph and extracts the components/types assemblies
        /// and other files/directories used.
        /// </summary>
        /// <param name="pVertices">Collection of vertices in the experiment graph.</param>
        public ExperimentPackagingResults PackExperiment(Experiment experiment)
        {
            foreach (ExperimentNode vertex in experiment.Vertices)
            {
                ExtractFilesFromNode(vertex);
            }

            ExperimentPackagingResults results = new ExperimentPackagingResults(experiment);

            results.TypeAssemblies      = new List <string>(this.m_typeAssemblies);
            results.ComponentAssemblies = new List <string>(this.m_componentAssemblies);
            results.Files       = new List <PackageFileInfo>(this.m_files);
            results.Directories = new List <PackageFileInfo>(this.m_directories);

            string tempPath = Path.Combine(Path.GetTempPath(), Path.GetFileName(experiment.ExperimentInfo.FilePath));

            ExperimentManager.SaveAs(experiment, tempPath, ReferencedFiles.IGNORE);

            return(results);
        }
        /// <summary>
        /// Goes through all the vertices in the experiment graph and extracts the components/types assemblies
        /// and other files/directories used.
        /// </summary>
        /// <param name="pVertices">Collection of vertices in the experiment graph.</param>
        public ExperimentPackagingResults PackExperiment(Experiment experiment)
        {
            foreach (ExperimentNode vertex in experiment.Vertices)
            {
                ExtractFilesFromNode(vertex);
            }

            ExperimentPackagingResults results = new ExperimentPackagingResults(experiment);
            results.TypeAssemblies = new List<string>(this.m_typeAssemblies);
            results.ComponentAssemblies = new List<string>(this.m_componentAssemblies);
            results.Files = new List<PackageFileInfo>(this.m_files);
            results.Directories = new List<PackageFileInfo>(this.m_directories);

            string tempPath = Path.Combine(Path.GetTempPath(), Path.GetFileName(experiment.ExperimentInfo.FilePath));
            ExperimentManager.SaveAs(experiment, tempPath, ReferencedFiles.IGNORE);

            return results;
        }