/// <summary> /// Initializes a new instance of the <see cref="ParseFiler"/> class. /// </summary> /// <param name="cache">The cache.</param> /// <param name="taskUpdateHandler">The task update handler.</param> /// <param name="idleQueue">The idle queue.</param> /// <param name="parserAgent">The parser agent.</param> public ParseFiler(FdoCache cache, Action <TaskReport> taskUpdateHandler, IdleQueue idleQueue, ICmAgent parserAgent) { Debug.Assert(cache != null); Debug.Assert(taskUpdateHandler != null); Debug.Assert(idleQueue != null); Debug.Assert(parserAgent != null); m_cache = cache; m_taskUpdateHandler = taskUpdateHandler; m_idleQueue = idleQueue; m_parserAgent = parserAgent; m_resultQueue = new Queue <ParseResult>(); m_syncRoot = new object(); var servLoc = cache.ServiceLocator; m_wordformRepository = servLoc.GetInstance <IWfiWordformRepository>(); m_analysisFactory = servLoc.GetInstance <IWfiAnalysisFactory>(); m_mbFactory = servLoc.GetInstance <IWfiMorphBundleFactory>(); m_baseAnnotationRepository = servLoc.GetInstance <ICmBaseAnnotationRepository>(); m_baseAnnotationFactory = servLoc.GetInstance <ICmBaseAnnotationFactory>(); m_moFormRepository = servLoc.GetInstance <IMoFormRepository>(); m_msaRepository = servLoc.GetInstance <IMoMorphSynAnalysisRepository>(); m_userAgent = m_cache.LanguageProject.DefaultUserAgent; m_analysesWithOldEvaluation = new HashSet <IWfiAnalysis>( m_cache.ServiceLocator.GetInstance <IWfiAnalysisRepository>().AllInstances().Where( analysis => analysis.GetAgentOpinion(m_parserAgent) != Opinions.noopinion)); }
/// <summary> /// This contructor is only to be used by the /// </summary> /// <param name="owner"></param> /// <param name="caches"></param> /// <param name="choices"></param> /// <param name="anal"></param> public UpdateRealAnalysisMethod(SandboxBase owner, CachePair caches, InterlinLineChoices choices, IWfiAnalysis anal) { m_sandbox = owner; m_caches = caches; m_hvoSbWord = kSbWord; // kSbWord really is a constant, not a real hvo. //m_hvoWordform = hvoWordform; //m_hvoWfiAnalysis = hvoWfiAnalysis; m_anal = anal; //m_hvoWordGloss = hvoWordGloss; m_sda = m_caches.DataAccess; m_sdaMain = m_caches.MainCache.MainCacheAccessor; m_cmorphs = m_sda.get_VecSize(m_hvoSbWord, ktagSbWordMorphs); m_choices = choices; //m_tssForm = tssForm; var servLoc = m_caches.MainCache.ServiceLocator; m_moFormRepos = servLoc.GetInstance <IMoFormRepository>(); m_senseRepos = servLoc.GetInstance <ILexSenseRepository>(); m_msaRepos = servLoc.GetInstance <IMoMorphSynAnalysisRepository>(); }
/// <summary> /// This contructor is only to be used by the /// </summary> /// <param name="owner"></param> /// <param name="caches"></param> /// <param name="choices"></param> /// <param name="anal"></param> public UpdateRealAnalysisMethod(SandboxBase owner, CachePair caches, InterlinLineChoices choices, IWfiAnalysis anal) { m_sandbox = owner; m_caches = caches; m_hvoSbWord = kSbWord; // kSbWord really is a constant, not a real hvo. //m_hvoWordform = hvoWordform; //m_hvoWfiAnalysis = hvoWfiAnalysis; m_anal = anal; //m_hvoWordGloss = hvoWordGloss; m_sda = m_caches.DataAccess; m_sdaMain = m_caches.MainCache.MainCacheAccessor; m_cmorphs = m_sda.get_VecSize(m_hvoSbWord, ktagSbWordMorphs); m_choices = choices; //m_tssForm = tssForm; var servLoc = m_caches.MainCache.ServiceLocator; m_moFormRepos = servLoc.GetInstance<IMoFormRepository>(); m_senseRepos = servLoc.GetInstance<ILexSenseRepository>(); m_msaRepos = servLoc.GetInstance<IMoMorphSynAnalysisRepository>(); }