public static void DetectFile(string filePath, string projectFileName) { var builder = new ContainerBuilder(); builder.RegisterModule(new FrameworkModule()); builder.RegisterModule(new DataContractSerializerModule()); using (var container = builder.Build()) { string detectorPath = ConfigurationManager.AppSettings.Get("Defraser.DetectorPath") ?? AppDomain.CurrentDomain.BaseDirectory; IDetectorFactory detectorFactory = container.Resolve <IDetectorFactory>(); detectorFactory.Initialize(detectorPath); File.Delete(projectFileName); ProjectManager projectManager = container.Resolve <ProjectManager>(); IProject project = projectManager.CreateProject(projectFileName, "Console", DateTime.Now, "Batch process"); IInputFile inputFile = project.AddFile(filePath, detectorFactory.ContainerDetectors.Union(detectorFactory.CodecDetectors)); IFileScanner fileScanner = container.Resolve <IFileScanner>(); fileScanner.ContainerDetectors = detectorFactory.ContainerDetectors; fileScanner.CodecDetectors = detectorFactory.CodecDetectors; fileScanner.DataBlockDetected += (s, e) => project.AddDataBlock(e.DataBlock); fileScanner.Scan(inputFile, container.Resolve <IProgressReporter>()); projectManager.SaveProject(project); projectManager.CloseProject(project); } }
private void CompleteDeserialization(IDetectorFactory detectorFactory) { if (Detector != null) { _detector = detectorFactory.GetDetector(Detector.DetectorType) ?? Detector; } }
public AdvancedDetectorConfiguration(bool editMode, IDetectorFactory detectorFactory) { PreConditions.Argument("detectorFactory").Value(detectorFactory).IsNotNull(); _editMode = editMode; _detectorFactory = detectorFactory; InitializeComponent(); }
private void InitCodecDetectors(string backEndFolder) { IDetectorFactory detectorFactory = CreateDetectorFactory(); detectorFactory.Initialize(backEndFolder); foreach (var detector in detectorFactory.CodecDetectors) { _codecDetectorDictionary.Add(detector.Name, detector); } }
public DefaultCodecHeaderManager(BackgroundFileScanner backgroundFileScanner, IDetectorFactory detectorFactory, ProjectManager projectManager, Creator <EditDefaultCodecHeader> editDefaultCodecHeaderCreator) { _backgroundFileScanner = backgroundFileScanner; _detectorFactory = detectorFactory; _editDefaultCodecHeaderCreator = editDefaultCodecHeaderCreator; _codecHeaderSource = new Dictionary <CodecID, IResultNode>(); projectManager.ProjectChanged += ProjectManager_ProjectChanged; }
public void Carve(string path, long position, long length, IDataBlockCallback callback) { IProject project = CreateProject("C:/folderDieNietBestaat"); IInputFile inputFile = CreateInputFile(project, path); IFileScanner fileScanner = CreateFileScanner(); IDetectorFactory detectorFactory = CreateDetectorFactory(); fileScanner.CodecDetectors = detectorFactory.CodecDetectors; fileScanner.ContainerDetectors = detectorFactory.ContainerDetectors; fileScanner.DataBlockDetected += (o, e) => { callback.DataBlockDetectedWithCodecs(e.DataBlock.StartOffset, e.DataBlock.EndOffset, GetCodecStreamsAndKeyFrames(e.DataBlock)); }; (fileScanner as FileScanner).Scan(inputFile, CreateDataReaderPool().CreateDataReader(inputFile.CreateDataPacket().GetSubPacket(position, length)), new NullProgressReporter()); }
public IDetector GetDetector(IDetectorFactory detectorFactory) { if (DetectorType == typeof(UnknownFormatDetector).FullName) { return(new UnknownFormatDetector()); } IDetector detector = detectorFactory.Detectors.Single(x => x.DetectorType.FullName == DetectorType); foreach (Pair <string, string> configurationItem in Configuration) { detector.SetConfigurationItem(configurationItem.First, configurationItem.Second); } return(detector); }
public AddFile(IProject project, IDetectorFactory detectorFactory, IReferenceHeaderDatabase referenceHeaderDatabase) { PreConditions.Argument("project").Value(project).IsNotNull(); _project = project; _referenceHeaderDatabase = referenceHeaderDatabase; InitializeComponent(); dataGridView1.IncludedColumnVisible = true; dataGridView1.IncludedHeadersChanged += dataGridView1_IncludedHeadersChanged; containerDetectorSelector.AvailableDetectors = detectorFactory.ContainerDetectors; codecDetectorSelector.AvailableDetectors = detectorFactory.CodecDetectors; // If the H.264 detector is missing, display text on how it can be licensed. label4.Visible = (MainForm.EditionType == MainForm.Edition.Free); }
public void Carve(string path, long position, long length, StringList codecDetectors, StringList containerDetectors, IDataBlockCallback callback, IBaseProgressListener baseProgressListener) { IProject project = CreateProject("C:/nonExistingFolder"); IInputFile inputFile = CreateInputFile(project, path); IFileScanner fileScanner = CreateFileScanner(); IDetectorFactory detectorFactory = CreateDetectorFactory(); CancelableProgressAdapter progressReporter = new CancelableProgressAdapter(baseProgressListener); fileScanner.CodecDetectors = detectorFactory.CodecDetectors.Where(detector => codecDetectors.Contains(detector.Name)); fileScanner.ContainerDetectors = detectorFactory.ContainerDetectors.Where(detector => containerDetectors.Contains(detector.Name)); fileScanner.DataBlockDetected += (o, e) => { callback.DataBlockDetectedWithCodecs(e.DataBlock.StartOffset, e.DataBlock.EndOffset, GetCodecStreamsAndKeyFrames(e.DataBlock)); }; try { StartPolling(progressReporter); (fileScanner as FileScanner).Scan(inputFile, CreateDataReaderPool().CreateDataReader(inputFile.CreateDataPacket().GetSubPacket(position, length)), progressReporter); } finally { _polling = false; } }
public HomeController(IAlgorithmFactory algorithmFactory, IEmbederFactory embederFactory, IDetectorFactory detectorFactory) { _algorithmFactory = algorithmFactory; _embederFactory = embederFactory; _detectorFactory = detectorFactory; }
public DetectorDataContractSurrogate(IDetectorFactory detectorFactory, IDataContractSurrogate dataContractSurrogate) { _detectorFactory = detectorFactory; _dataContractSurrogate = dataContractSurrogate; }
public DetectorItem(IDetectorFactory detectorFactory) { DetectorFactory = detectorFactory; }
public SerializationContext(IDetectorFactory detectorFactory) { PreConditions.Argument("detectorFactory").Value(detectorFactory).IsNotNull(); _detectorFactory = detectorFactory; }