1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27
28#ifndef __com_sun_star_sheet_NoConvergenceException_idl__
29#include <com/sun/star/sheet/NoConvergenceException.idl>
30#endif
31
32#include <com/sun/star/uno/XInterface.idl>
33#include <com/sun/star/beans/XPropertySet.idl>
34#include <com/sun/star/sheet/LocalizedName.idl>
35
36module com
37{
38module sun
39{
40module star
41{
42module sheet
43{
44module addin
45{
46    interface XCompatibilityNames  : com::sun::star::uno::XInterface
47    {
48        /// getCompatibilityNames.
49        sequence< com::sun::star::sheet::LocalizedName > getCompatibilityNames ( [in] string aProgrammaticName );
50    };
51
52    /**
53    * Interface with analysis functions.
54    */
55    interface XAnalysis : com::sun::star::uno::XInterface
56    {
57        /// _test.
58//      double get_Test(
59//                  [in] com::sun::star::beans::XPropertySet xOptions,
60//                  [in] long Mode, [in] double f1, [in] double f2, [in] double f3 );
61
62        /// workday.
63        long getWorkday(
64                    [in] com::sun::star::beans::XPropertySet xOptions,
65                    [in] long nStartDate, [in] long nDays, [in] any aHolidays )
66            raises( com::sun::star::lang::IllegalArgumentException );
67
68        /// yearfrac.
69        double getYearfrac(
70                    [in] com::sun::star::beans::XPropertySet xOptions,
71                    [in] long StartDate, [in] long EndDate, [in] any Mode )
72            raises( com::sun::star::lang::IllegalArgumentException );
73
74        /// edate.
75        long getEdate(
76                    [in] com::sun::star::beans::XPropertySet xOptions,
77                    [in] long nStartDate, [in] long nNumOfMonths )
78            raises( com::sun::star::lang::IllegalArgumentException );
79
80        /// weeknum.
81        long getWeeknum(
82                    [in] com::sun::star::beans::XPropertySet xOptions,
83                    [in] long nStartDate, [in] long nMode )
84            raises( com::sun::star::lang::IllegalArgumentException );
85
86        /// eomonth.
87        long getEomonth(
88                    [in] com::sun::star::beans::XPropertySet xOptions,
89                    [in] long nStartDate, [in] long nMonths )
90            raises( com::sun::star::lang::IllegalArgumentException );
91
92        /// networkdays.
93        long getNetworkdays(
94                    [in] com::sun::star::beans::XPropertySet xOptions,
95                    [in] long StartDate, [in] long EndDate, [in] any Holidays )
96            raises( com::sun::star::lang::IllegalArgumentException );
97
98        /// iseven.
99        long getIseven( [in] long nValue )
100            raises( com::sun::star::lang::IllegalArgumentException );
101
102        /// isodd.
103        long getIsodd( [in] long nValue )
104            raises( com::sun::star::lang::IllegalArgumentException );
105
106        /// multinomial.
107		double getMultinomial(
108					[in] com::sun::star::beans::XPropertySet xOptions,
109					[in] sequence< sequence< long > > aValList,
110					[in] sequence< any > aOptVLst )
111            raises( com::sun::star::lang::IllegalArgumentException );
112
113        /// seriessum.
114        double getSeriessum(
115                    [in] double X, [in] double N, [in] double M,
116                    [in] sequence< sequence< double > > CoeffList )
117            raises( com::sun::star::lang::IllegalArgumentException );
118
119        // quotient.
120        double getQuotient( [in] double Num, [in] double Denum )
121            raises( com::sun::star::lang::IllegalArgumentException );
122
123        // mround.
124        double getMround( [in] double Number, [in] double Multiple )
125            raises( com::sun::star::lang::IllegalArgumentException );
126
127        // sqrtpi.
128        double getSqrtpi( [in] double Number )
129            raises( com::sun::star::lang::IllegalArgumentException );
130
131        // randbetween.
132        double getRandbetween( [in] double Min, [in] double Max )
133            raises( com::sun::star::lang::IllegalArgumentException );
134
135        /// gcd.
136        double getGcd(
137                    [in] com::sun::star::beans::XPropertySet xOptions,
138                    [in] sequence< sequence< double > > FirstValList,
139                    [in] sequence< any > OptionalValList )
140            raises( com::sun::star::lang::IllegalArgumentException );
141
142        /// lcm.
143        double getLcm(
144                    [in] com::sun::star::beans::XPropertySet xOptions,
145                    [in] sequence< sequence< double > > FirstValList,
146                    [in] sequence< any > OptionalValList )
147            raises( com::sun::star::lang::IllegalArgumentException );
148
149        /// besseli.
150        double getBesseli( [in] double Num, [in] long Order )
151            raises( com::sun::star::lang::IllegalArgumentException,
152                    com::sun::star::sheet::NoConvergenceException );
153
154        /// besselj.
155        double getBesselj( [in] double Num, [in] long Order )
156            raises( com::sun::star::lang::IllegalArgumentException,
157                    com::sun::star::sheet::NoConvergenceException );
158
159        /// besselk.
160        double getBesselk( [in] double Num, [in] long Order )
161            raises( com::sun::star::lang::IllegalArgumentException,
162                    com::sun::star::sheet::NoConvergenceException );
163
164        /// bessely.
165        double getBessely( [in] double Num, [in] long Order )
166            raises( com::sun::star::lang::IllegalArgumentException,
167                    com::sun::star::sheet::NoConvergenceException );
168
169        /// bin2oct.
170        string getBin2Oct(
171                    [in] com::sun::star::beans::XPropertySet xOptions,
172                    [in] string BinaryNum, [in] any Places )
173            raises( com::sun::star::lang::IllegalArgumentException );
174
175        /// bin2dec.
176        double getBin2Dec( [in] string BinaryNum )
177            raises( com::sun::star::lang::IllegalArgumentException );
178
179        /// bin2hex.
180        string getBin2Hex(
181                    [in] com::sun::star::beans::XPropertySet xOptions,
182                    [in] string BinaryNum, [in] any Places )
183            raises( com::sun::star::lang::IllegalArgumentException );
184
185        /// oct2bin.
186        string getOct2Bin(
187                    [in] com::sun::star::beans::XPropertySet xOptions,
188                    [in] string OctalNum, [in] any Places )
189            raises( com::sun::star::lang::IllegalArgumentException );
190
191        /// oct2dec.
192        double getOct2Dec( [in] string OctalNum )
193            raises( com::sun::star::lang::IllegalArgumentException );
194
195        /// oct2hex.
196        string getOct2Hex(
197                    [in] com::sun::star::beans::XPropertySet xOptions,
198                    [in] string OctalNum, [in] any Places )
199            raises( com::sun::star::lang::IllegalArgumentException );
200
201        /// dec2bin.
202        string getDec2Bin(
203                    [in] com::sun::star::beans::XPropertySet xOptions,
204                    [in] long Value, [in] any Places )
205            raises( com::sun::star::lang::IllegalArgumentException );
206
207        /// dec2oct.
208        string getDec2Oct(
209                    [in] com::sun::star::beans::XPropertySet xOptions,
210                    [in] long Value, [in] any Places )
211            raises( com::sun::star::lang::IllegalArgumentException );
212
213        /// dec2hex.
214        string getDec2Hex(
215                    [in] com::sun::star::beans::XPropertySet xOptions,
216                    [in] double Value, [in] any Places )
217            raises( com::sun::star::lang::IllegalArgumentException );
218
219        /// hex2bin.
220        string getHex2Bin(
221                    [in] com::sun::star::beans::XPropertySet xOptions,
222                    [in] string HexadecimalValue, [in] any Places )
223            raises( com::sun::star::lang::IllegalArgumentException );
224
225        /// hex2dec.
226        double getHex2Dec( [in] string HexadecimalValue )
227            raises( com::sun::star::lang::IllegalArgumentException );
228
229        /// hex2oct.
230        string getHex2Oct(
231                    [in] com::sun::star::beans::XPropertySet xOptions,
232                    [in] string HexadecimalValue, [in] any Places )
233            raises( com::sun::star::lang::IllegalArgumentException );
234
235        /// delta.
236        long getDelta(
237                    [in] com::sun::star::beans::XPropertySet xOptions,
238                    [in] double Num1, [in] any Num2 )
239            raises( com::sun::star::lang::IllegalArgumentException );
240
241        /// erf.
242        double getErf(
243                    [in] com::sun::star::beans::XPropertySet xOptions,
244                    [in] double LowerLimit, [in] any UpperLimit )
245            raises( com::sun::star::lang::IllegalArgumentException );
246
247        /// erfc.
248        double getErfc( [in] double LowerLimit )
249            raises( com::sun::star::lang::IllegalArgumentException );
250
251        /// gestep.
252        long getGestep(
253                    [in] com::sun::star::beans::XPropertySet xOptions,
254                    [in] double Num, [in] any Step )
255            raises( com::sun::star::lang::IllegalArgumentException );
256
257        /// factdouble.
258        double getFactdouble( [in] long Num )
259            raises( com::sun::star::lang::IllegalArgumentException );
260
261        /// imabs.
262        double getImabs( [in] string Num )
263            raises( com::sun::star::lang::IllegalArgumentException );
264
265        /// imaginary.
266        double getImaginary( [in] string Num )
267            raises( com::sun::star::lang::IllegalArgumentException );
268
269        /// impower.
270        string getImpower( [in] string Num, [in] double Power )
271            raises( com::sun::star::lang::IllegalArgumentException );
272
273        /// imargument.
274        double getImargument( [in] string Num )
275            raises( com::sun::star::lang::IllegalArgumentException );
276
277        /// imcos.
278        string getImcos( [in] string Num )
279            raises( com::sun::star::lang::IllegalArgumentException );
280
281        /// imdiv.
282        string getImdiv( [in] string Num1, [in] string Num2 )
283            raises( com::sun::star::lang::IllegalArgumentException );
284
285        /// imexp.
286        string getImexp( [in] string Num )
287            raises( com::sun::star::lang::IllegalArgumentException );
288
289        /// imconjugate.
290        string getImconjugate( [in] string Num )
291            raises( com::sun::star::lang::IllegalArgumentException );
292
293        /// imln.
294        string getImln( [in] string Num )
295            raises( com::sun::star::lang::IllegalArgumentException );
296
297        /// imlog10.
298        string getImlog10( [in] string Num )
299            raises( com::sun::star::lang::IllegalArgumentException );
300
301        /// imlog2.
302        string getImlog2( [in] string Num )
303            raises( com::sun::star::lang::IllegalArgumentException );
304
305        /// improduct.
306        string getImproduct(
307                    [in] com::sun::star::beans::XPropertySet xOptions,
308                    [in] sequence< sequence< string > > Num1,
309                    [in] sequence< any > NumberList )
310            raises( com::sun::star::lang::IllegalArgumentException );
311
312        /// imreal.
313        double getImreal( [in] string Num )
314            raises( com::sun::star::lang::IllegalArgumentException );
315
316        /// imsin.
317        string getImsin( [in] string Num )
318            raises( com::sun::star::lang::IllegalArgumentException );
319
320        /// imsub.
321        string getImsub( [in] string Num1, [in] string Num2 )
322            raises( com::sun::star::lang::IllegalArgumentException );
323
324        /// imsum.
325        string getImsum(
326                    [in] com::sun::star::beans::XPropertySet xOptions,
327                    [in] sequence< sequence< string > > Num1,
328                    [in] sequence< any > OptNums )
329            raises( com::sun::star::lang::IllegalArgumentException );
330
331        /// imsqrt.
332        string getImsqrt( [in] string Num )
333            raises( com::sun::star::lang::IllegalArgumentException );
334
335        /// complex.
336        string getComplex( [in] double Real, [in] double Imaginary, [in] any Suffix )
337            raises( com::sun::star::lang::IllegalArgumentException );
338
339        /// convert.
340        double getConvert( [in] double Value, [in] string FromUnit, [in] string ToUnit )
341            raises( com::sun::star::lang::IllegalArgumentException );
342
343
344        /// amordegrc.
345        double getAmordegrc(
346                    [in] com::sun::star::beans::XPropertySet xOptions,
347                    [in] double Cost, [in] long Date, [in] long FirstPer, [in] double RestVal,
348                    [in] double Periode, [in] double Rate, [in] any Base )
349            raises( com::sun::star::lang::IllegalArgumentException );
350
351        /// amorlinc.
352        double getAmorlinc(
353                    [in] com::sun::star::beans::XPropertySet xOptions,
354                    [in] double Cost, [in] long Date, [in] long FirstPer, [in] double RestVal,
355                    [in] double Periode, [in] double Rate, [in] any Base )
356            raises( com::sun::star::lang::IllegalArgumentException );
357
358        /// accrint.
359        double getAccrint(
360                    [in] com::sun::star::beans::XPropertySet xOptions,
361                    [in] long Issue, [in] long FirstInterest, [in] long Settlement, [in] double Rate,
362                    [in] any Value, [in] long Frequency, [in] any Base )
363            raises( com::sun::star::lang::IllegalArgumentException );
364
365        /// accrintm.
366        double getAccrintm(
367                    [in] com::sun::star::beans::XPropertySet xOptions,
368                    [in] long Issue, [in] long Settlement, [in] double Rate, [in] any Value, [in] any Base )
369            raises( com::sun::star::lang::IllegalArgumentException );
370
371        /// received.
372        double getReceived(
373                    [in] com::sun::star::beans::XPropertySet xOptions,
374                    [in] long Settlement, [in] long Maturity, [in] double Investment, [in] double Discount,
375                    [in] any Base )
376            raises( com::sun::star::lang::IllegalArgumentException );
377
378        /// disc.
379        double getDisc(
380                    [in] com::sun::star::beans::XPropertySet xOptions,
381                    [in] long Settlement, [in] long Maturity, [in] double Price, [in] double Redemption,
382                    [in] any Base )
383            raises( com::sun::star::lang::IllegalArgumentException );
384
385        /// duration.
386        double getDuration(
387                    [in] com::sun::star::beans::XPropertySet xOptions,
388                    [in] long Settlement, [in] long Maturity, [in] double Coupon, [in] double Yield,
389                    [in] long Frequncy, [in] any Base )
390            raises( com::sun::star::lang::IllegalArgumentException );
391
392        /// effect.
393        double getEffect( [in] double Nomial, [in] long NumOfPeriods )
394            raises( com::sun::star::lang::IllegalArgumentException );
395
396        /// cumprinc.
397        double getCumprinc(
398                    [in] double Rate, [in] long NumOfPeriods, [in] double Val, [in] long StartPeriode,
399                    [in] long EndPeriode, [in] long PayType )
400            raises( com::sun::star::lang::IllegalArgumentException );
401
402        /// cumipmt.
403        double getCumipmt(
404                    [in] double Rate, [in] long NumOfPeriods, [in] double Val, [in] long StartPeriode,
405                    [in] long EndPeriode, [in] long PayType )
406            raises( com::sun::star::lang::IllegalArgumentException );
407
408        /// price.
409        double getPrice(
410                    [in] com::sun::star::beans::XPropertySet xOptions,
411                    [in] long Settlement, [in] long Maturity, [in] double Rate, [in] double Yield,
412                    [in] double Redemption, [in] long Frequncy, [in] any Base )
413            raises( com::sun::star::lang::IllegalArgumentException );
414
415        /// pricedisc.
416        double getPricedisc(
417                    [in] com::sun::star::beans::XPropertySet xOptions,
418                    [in] long Settlement, [in] long Maturity, [in] double Discont, [in] double Redemption,
419                    [in] any Base )
420            raises( com::sun::star::lang::IllegalArgumentException );
421
422        /// pricemat.
423        double getPricemat(
424                    [in] com::sun::star::beans::XPropertySet xOptions,
425                    [in] long Settlement, [in] long Maturity, [in] long Issue, [in] double Rate, [in] double Yield,
426                    [in] any Base )
427            raises( com::sun::star::lang::IllegalArgumentException );
428
429        /// mduration.
430        double getMduration(
431                    [in] com::sun::star::beans::XPropertySet xOptions,
432                    [in] long Settlement, [in] long Maturity, [in] double Coupon, [in] double Yield,
433                    [in] long Frequency, [in] any Base )
434            raises( com::sun::star::lang::IllegalArgumentException );
435
436        /// nominal.
437        double getNominal( [in] double Rate, [in] long NumOfPeriods )
438            raises( com::sun::star::lang::IllegalArgumentException );
439
440        /// dollarfr.
441        double getDollarfr( [in] double DollarDecimal, [in] long Fraction )
442            raises( com::sun::star::lang::IllegalArgumentException );
443
444        /// dollarde.
445        double getDollarde( [in] double DollarFractional, [in] long Fraction )
446            raises( com::sun::star::lang::IllegalArgumentException );
447
448        /// yield.
449        double getYield(
450                    [in] com::sun::star::beans::XPropertySet xOptions,
451                    [in] long Settlement, [in] long Maturity, [in] double Coupon, [in] double Price,
452                    [in] double Redemption, [in] long Frequency, [in] any Base )
453            raises( com::sun::star::lang::IllegalArgumentException );
454
455        /// yielddisc.
456        double getYielddisc(
457                    [in] com::sun::star::beans::XPropertySet xOptions,
458                    [in] long Settlement, [in] long Maturity, [in] double Price,
459                    [in] double Redemption, [in] any Base )
460            raises( com::sun::star::lang::IllegalArgumentException );
461
462        /// yieldmat.
463        double getYieldmat(
464                    [in] com::sun::star::beans::XPropertySet xOptions,
465                    [in] long Settlement, [in] long Maturity, [in] long Issue, [in] double Rate,
466                    [in] double Price, [in] any Base )
467            raises( com::sun::star::lang::IllegalArgumentException );
468
469        /// tbilleq.
470        double getTbilleq(
471                    [in] com::sun::star::beans::XPropertySet xOptions,
472                    [in] long Settlement, [in] long Maturity, [in] double Discont )
473            raises( com::sun::star::lang::IllegalArgumentException );
474
475        /// tbillprice.
476        double getTbillprice(
477                    [in] com::sun::star::beans::XPropertySet xOptions,
478                    [in] long Settlement, [in] long Maturity, [in] double Discont )
479            raises( com::sun::star::lang::IllegalArgumentException );
480
481        /// tbillyield.
482        double getTbillyield(
483                    [in] com::sun::star::beans::XPropertySet xOptions,
484                    [in] long Settlement, [in] long Maturity, [in] double Price )
485            raises( com::sun::star::lang::IllegalArgumentException );
486
487        /// oddfprice.
488        double getOddfprice(
489                    [in] com::sun::star::beans::XPropertySet xOptions,
490                    [in] long Settlement, [in] long Maturity, [in] long Issue, [in] long FirstCouponDate,
491                    [in] double Rate, [in] double Yield, [in] double Redemption,
492                    [in] long Frequency, [in] any Base )
493            raises( com::sun::star::lang::IllegalArgumentException );
494
495        /// oddfyield.
496        double getOddfyield(
497                    [in] com::sun::star::beans::XPropertySet xOptions,
498                    [in] long Settlement, [in] long Maturity, [in] long Issue, [in] long FirstCouponDate,
499                    [in] double Rate, [in] double Price, [in] double Redemption,
500                    [in] long Frequency, [in] any Base )
501            raises( com::sun::star::lang::IllegalArgumentException );
502
503        /// oddlprice.
504        double getOddlprice(
505                    [in] com::sun::star::beans::XPropertySet xOptions,
506                    [in] long Settlement, [in] long Maturity, [in] long LastInterest,
507                    [in] double Rate, [in] double Yield, [in] double Redemption,
508                    [in] long Frequency, [in] any Base )
509            raises( com::sun::star::lang::IllegalArgumentException );
510
511        /// oddlyield.
512        double getOddlyield(
513                    [in] com::sun::star::beans::XPropertySet xOptions,
514                    [in] long Settlement, [in] long Maturity, [in] long LastInterest,
515                    [in] double Rate, [in] double Price, [in] double Redemption,
516                    [in] long Frequency, [in] any Base )
517            raises( com::sun::star::lang::IllegalArgumentException );
518
519        /// xirr.
520        double getXirr(
521                    [in] com::sun::star::beans::XPropertySet xOptions,
522                    [in] sequence< sequence< double > > Values,
523                    [in] sequence< sequence< long > > Dates, [in] any Guess )
524            raises( com::sun::star::lang::IllegalArgumentException );
525
526        /// xnpv.
527        double getXnpv(
528                    [in] double Rate,
529                    [in] sequence< sequence< double > > Values,
530                    [in] sequence< sequence< long > > Dates )
531            raises( com::sun::star::lang::IllegalArgumentException );
532
533        /// intrate.
534        double getIntrate(
535                    [in] com::sun::star::beans::XPropertySet xOptions,
536                    [in] long Settlement, [in] long Maturity,
537                    [in] double Investment, [in] double Redemption, [in] any Base )
538            raises( com::sun::star::lang::IllegalArgumentException );
539
540        /// coupncd.
541        double getCoupncd(
542                    [in] com::sun::star::beans::XPropertySet xOptions,
543                    [in] long Settlement, [in] long Maturity,
544                    [in] long Frequency, [in] any Base )
545            raises( com::sun::star::lang::IllegalArgumentException );
546
547        /// coupdays.
548        double getCoupdays(
549                    [in] com::sun::star::beans::XPropertySet xOptions,
550                    [in] long Settlement, [in] long Maturity,
551                    [in] long Frequency, [in] any Base )
552            raises( com::sun::star::lang::IllegalArgumentException );
553
554
555        /// coupdaysnc.
556        double getCoupdaysnc(
557                    [in] com::sun::star::beans::XPropertySet xOptions,
558                    [in] long Settlement, [in] long Maturity,
559                    [in] long Frequency, [in] any Base )
560            raises( com::sun::star::lang::IllegalArgumentException );
561
562        /// coupdaybs.
563        double getCoupdaybs(
564                    [in] com::sun::star::beans::XPropertySet xOptions,
565                    [in] long Settlement, [in] long Maturity,
566                    [in] long Frequency, [in] any Base )
567            raises( com::sun::star::lang::IllegalArgumentException );
568
569        /// couppcd.
570        double getCouppcd(
571                    [in] com::sun::star::beans::XPropertySet xOptions,
572                    [in] long Settlement, [in] long Maturity,
573                    [in] long Frequency, [in] any Base )
574            raises( com::sun::star::lang::IllegalArgumentException );
575
576        /// coupnum.
577        double getCoupnum(
578                    [in] com::sun::star::beans::XPropertySet xOptions,
579                    [in] long Settlement, [in] long Maturity,
580                    [in] long Frequency, [in] any Base )
581            raises( com::sun::star::lang::IllegalArgumentException );
582
583        /// fvschedule.
584        double getFvschedule( [in] double Principal, [in] sequence< sequence< double > > Schedule )
585            raises( com::sun::star::lang::IllegalArgumentException );
586    };
587
588    service Analysis
589    {
590        // exported interfaces:
591        interface XCompatibilityNames;
592        interface XAnalysis;
593    };
594};
595};
596};
597};
598};
599
600