예제 #1
0
 /// <summary>
 /// Add a new toolpack
 /// </summary>
 /// <param name="toolPack"></param>
 public void Add(UDFFinder toolPack)
 {
     _usedToolPacks.Add(toolPack);
 }
 /**
  * @param udfFinder pass <code>null</code> for default (AnalysisToolPak only)
  */
 public HSSFFormulaEvaluator(IWorkbook workbook, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder)
 {
     _bookEvaluator = new WorkbookEvaluator(HSSFEvaluationWorkbook.Create(workbook), stabilityClassifier, udfFinder);
 }
예제 #3
0
        /**
 * Register a new toolpack in this workbook.
 *
 * @param toopack the toolpack to register
 */
        public void AddToolPack(UDFFinder toopack)
        {
            AggregatingUDFFinder udfs = (AggregatingUDFFinder)_udfFinder;
            udfs.Add(toopack);
        }
        /**
	 * @param stabilityClassifier used to optimise caching performance. Pass <code>null</code>
	 * for the (conservative) assumption that any cell may have its definition changed after
	 * evaluation begins.
	 * @param udfFinder pass <code>null</code> for default (AnalysisToolPak only)
	 */
        public static HSSFFormulaEvaluator Create(IWorkbook workbook, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder)
        {
            return new HSSFFormulaEvaluator(workbook, stabilityClassifier, udfFinder);
        }
 /// <summary>
 /// Add a new toolpack
 /// </summary>
 /// <param name="toolPack"></param>
 public void Add(UDFFinder toolPack)
 {
     _usedToolPacks.Add(toolPack);
 }
예제 #6
0
        /**
     *
     * @param name the  name of an external function, typically a name of a UDF
     * @param udf  locator of user-defiend functions to resolve names of VBA and Add-In functions
     * @return the external name or null
     */
        public NameXPtg GetNameXPtg(String name, UDFFinder udf)
        {
            LinkTable lnk = OrCreateLinkTable;
            NameXPtg xptg = lnk.GetNameXPtg(name);

            if (xptg == null && udf.FindFunction(name) != null)
            {
                // the name was not found in the list of external names
                // check if the Workbook's UDFFinder is aware about it and register the name if it is
                xptg = lnk.AddNameXPtg(name);
            }
            return xptg;
        }
예제 #7
0
 /**
  * @param udfFinder pass <code>null</code> for default (AnalysisToolPak only)
  */
 public static ForkedEvaluator Create(IWorkbook wb, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder)
 {
     return new ForkedEvaluator(CreateEvaluationWorkbook(wb), stabilityClassifier, udfFinder);
 }
예제 #8
0
 private ForkedEvaluator(IEvaluationWorkbook masterWorkbook, IStabilityClassifier stabilityClassifier, UDFFinder udfFinder)
 {
     _sewb = new ForkedEvaluationWorkbook(masterWorkbook);
     _evaluator = new WorkbookEvaluator(_sewb, stabilityClassifier, udfFinder);
 }