/// <summary>
        /// Queries factors for preprocessing requirements
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public override ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }

            if (filter != null)
            {
                if (filter.IsEnabled)
                {
                    requirements.MayUseTextRender = true;
                    //requirements.MayUseFeatureSpace = true;
                }
            }
            //requirements.MayUseFeatureSpace = true;
            //requirements.MayUseTextRender = true;
            //requirements.MayUseSelectedFeatures = true;

            //foreach (IScoreModelFactor factor in Factors)
            //{
            //    factor.CheckRequirements(requirements);

            //}

            return(requirements);
        }
        /// <summary>
        /// Queries factors for preprocessing requirements
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }

            switch (function.kernel)
            {
            case DocumentFunctionKernelType.iterative:
                break;

            case DocumentFunctionKernelType.singleCycle:
                break;
            }

            requirements.MayUseTextRender = true;

            //render.CheckRequirements(requirements);



            //model.Deploy();
            //model.CheckRequirements(requirements);


            return(requirements);
        }
        /// <summary>
        /// Queries factors for preprocessing requirements
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }

            if (instructionFlags.HasFlag(DocumentRenderInstructionFlags.rel_page))
            {
                requirements.MayUseGraph = true;
            }

            if (instructionFlags.HasFlag(DocumentRenderInstructionFlags.select_links))
            {
                requirements.MayUseGraph = true;
            }

            if (instructionFlags.HasFlag(DocumentRenderInstructionFlags.cur_page))
            {
                requirements.MayUseTextRender = true;
            }


            return(requirements);
        }
Ejemplo n.º 4
0
 public override ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
 {
     if (requirements == null)
     {
         requirements = new ScoreModelRequirements();
     }
     requirements.MayUseGraph = true;
     return(requirements);
 }
Ejemplo n.º 5
0
        public ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }

            return(requirements);
        }
 public override ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
 {
     if (requirements == null)
     {
         requirements = new ScoreModelRequirements();
     }
     requirements.MayUseSelectedFeatures = true;
     requirements.MayUseTextRender       = true;
     return(requirements);
 }
Ejemplo n.º 7
0
        /// <summary>
        /// Queries factors for preprocessing requirements
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }

            model.Deploy();
            model.CheckRequirements(requirements);


            return(requirements);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Queries factors for preprocessing requirements
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }

            foreach (IScoreModelFactor factor in Factors)
            {
                factor.CheckRequirements(requirements);
            }

            return(requirements);
        }
        /// <summary>
        /// Queries factors for preprocessing requirements
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }

            foreach (DocumentRenderInstruction inst in instructions)
            {
                inst.CheckRequirements(requirements);
            }

            return(requirements);
        }
Ejemplo n.º 10
0
        /*
         *
         * /// <summary>
         * /// Texts the preblend filter.
         * /// </summary>
         * /// <param name="context">The context.</param>
         * /// <param name="log">The log.</param>
         * public void TextPreblendFilter(OperationContext context, ILogBuilder log)
         * {
         *  // page in site filtering
         *  if (filter.IsEnabled)
         *  {
         *      log.log("Text preblend filter");
         *      Dictionary<String, TextDocumentSet> renderIndexFiltered = new Dictionary<String, TextDocumentSet>();
         *
         *      filter.Learn(context.renderSiteByDomain.Values);
         *
         *      foreach (KeyValuePair<string, TextDocumentSet> tds_pair in context.renderSiteByDomain)
         *      {
         *          renderIndexFiltered.Add(tds_pair.Key, filter.FilterDocumentSet(tds_pair.Value));
         *      }
         *
         *      foreach (KeyValuePair<string, TextDocumentSet> tds_pair in renderIndexFiltered)
         *      {
         *          context.renderSiteByDomain[tds_pair.Key] = tds_pair.Value;
         *          foreach (var td in tds_pair.Value)
         *          {
         *              context.renderLayersByAssignedID.Add(td.name, td);
         *          }
         *      }
         *  }
         * }
         */
        /*
         * /// <summary>
         * /// Texts the blending.
         * /// </summary>
         * /// <param name="context">The context.</param>
         * /// <param name="log">The log.</param>
         * public void TextBlending(OperationContext context, ILogBuilder log)
         * {
         *  log.log("Text blending");
         *  Boolean DoBlendPagesIntoSingleEntity = !blender.options.HasFlag(DocumentBlenderFunctionOptions.separatePages);
         *
         *  Int32 EmptyVectors = 0;
         *  Int32 Vectors = 0;
         *
         *  foreach (TextDocumentSet entitySet in context.renderSiteByDomain.Values)
         *  {
         *      WebSiteDocuments web = context.webSiteByDomain[entitySet.name];
         *      SpaceLabel spaceLabel = context.spaceLabelsDomains[entitySet.name];
         *
         *      if (DoBlendPagesIntoSingleEntity)
         *      {
         *          // filter function
         *          TextDocument doc = blender.blendToTextDocument(entitySet);
         *          doc.labels.Add(spaceLabel.name);
         *          context.textDocuments.Add(doc.name, doc);
         *          if (!doc.HasContent) EmptyVectors++;
         *          Vectors++;
         *      }
         *      else
         *      {
         *          var docs = blender.blendToSeparateTextDocuments(entitySet); //blender.blendToTextDocument(selectedTexts);
         *          foreach (TextDocument doc in docs)
         *          {
         *              doc.labels.Add(spaceLabel.name);
         *              context.textDocuments.Add(doc.name, doc);
         *
         *              if (!doc.HasContent) EmptyVectors++;
         *              Vectors++;
         *          }
         *      }
         *
         *      //if (!blender.options.HasFlag(DocumentBlenderFunctionOptions.keepLayersInMemory))
         *      //{
         *      //    entitySet.Clear();
         *      //}
         *  }
         *
         *  log.log("Rate of empty renders [" + context.rateOfEmptyRenders.ToString("P3") + "]");
         *
         *  context.rateOfEmptyRenders = EmptyVectors.GetRatio(Vectors);
         *
         *  if (context.rateOfEmptyRenders > 0.5)
         *  {
         *      log.log("EMPTY RENDERS RATE [" + context.rateOfEmptyRenders.ToString("P3") + "]");
         *  }
         *
         *  if (context.rateOfEmptyRenders > 0.9)
         *  {
         *      throw new Exception("Empty rates two high [" + context.rateOfEmptyRenders + "]");
         *  }
         *
         *  //if (!blender.options.HasFlag(DocumentBlenderFunctionOptions.keepLayersInMemory))
         *  //{
         *  //    context.renderSiteByDomain.Clear();
         *  //}
         * }
         */

        /// <summary>
        /// Queries factors for preprocessing requirements
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public override ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }
            render.CheckRequirements(requirements);
            if (filter.IsEnabled)
            {
                filter.CheckRequirements(requirements);
            }

            //model.Deploy();
            //model.CheckRequirements(requirements);

            return(requirements);
        }
        public override ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            if (requirements == null)
            {
                requirements = new ScoreModelRequirements();
            }



            //foreach (IScoreModelFactor factor in Factors)
            //{
            //    factor.CheckRequirements(requirements);

            //}

            return(requirements);
        }
Ejemplo n.º 12
0
        /// <summary>
        /// Checks the requirements and connects the <see cref="CacheProvider"/>
        /// </summary>
        /// <param name="requirements">The requirements.</param>
        /// <returns></returns>
        public ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
        {
            ScoreModelRequirements output = new ScoreModelRequirements();

            foreach (IHasProceduralRequirements component in componentsWithRequirements)
            {
                output = component.CheckRequirements(output);

                if (setup.useCacheProvider)
                {
                    if (component is IHasCacheProvider componentCached)
                    {
                        componentCached.SetCacheProvider(CacheProvider);
                    }
                }
            }

            output.Describe(notes);

            return(output);
        }
Ejemplo n.º 13
0
 public override ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null)
 {
     throw new System.NotImplementedException();
 }
 public abstract ScoreModelRequirements CheckRequirements(ScoreModelRequirements requirements = null);