Line data Source code
1 : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : /*
3 : * This file is part of the LibreOffice project.
4 : *
5 : * This Source Code Form is subject to the terms of the Mozilla Public
6 : * License, v. 2.0. If a copy of the MPL was not distributed with this
7 : * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 : */
9 :
10 : #ifndef INCLUDED_SC_SOURCE_CORE_OPENCL_OP_FINANCIAL_HXX
11 : #define INCLUDED_SC_SOURCE_CORE_OPENCL_OP_FINANCIAL_HXX
12 :
13 : #include "opbase.hxx"
14 :
15 : namespace sc { namespace opencl {
16 :
17 0 : class RRI: public SlidingFunctionBase
18 : {
19 : public:
20 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
21 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
22 0 : virtual bool takeString() const SAL_OVERRIDE { return false; }
23 0 : virtual bool takeNumeric() const SAL_OVERRIDE { return true; }
24 : };
25 :
26 0 : class OpRRI:public RRI
27 : {
28 : public:
29 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
30 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "RRI"; }
31 : };
32 :
33 0 : class OpNominal: public Normal
34 : {
35 : public:
36 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
37 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
38 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "NOMINAL_ADD"; }
39 : };
40 :
41 0 : class OpDollarde:public Normal
42 : {
43 : public:
44 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
45 :
46 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
47 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
48 :
49 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Dollarde"; }
50 :
51 : };
52 :
53 0 : class OpDollarfr:public Normal
54 : {
55 : public:
56 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
57 :
58 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
59 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
60 :
61 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Dollarfr"; }
62 :
63 : };
64 :
65 0 : class OpDISC: public Normal
66 : {
67 : public:
68 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
69 :
70 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
71 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
72 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
73 :
74 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "DISC"; }
75 : };
76 :
77 0 : class OpINTRATE: public Normal
78 : {
79 : public:
80 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
81 :
82 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
83 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
84 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
85 :
86 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "INTRATE"; }
87 : };
88 :
89 0 : class OpFV: public Normal
90 : {
91 : public:
92 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
93 :
94 : virtual void GenSlidingWindowFunction(std::stringstream& ss,
95 : const std::string &sSymName, SubArguments& vSubArguments) SAL_OVERRIDE;
96 : virtual void BinInlineFun(std::set<std::string>& ,
97 : std::set<std::string>& ) SAL_OVERRIDE;
98 :
99 0 : virtual std::string BinFuncName() const SAL_OVERRIDE {
100 0 : return "FV"; }
101 : };
102 :
103 0 : class OpIPMT: public Normal
104 : {
105 : public:
106 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
107 :
108 : virtual void GenSlidingWindowFunction(std::stringstream& ss,
109 : const std::string &sSymName, SubArguments& vSubArguments) SAL_OVERRIDE;
110 : virtual void BinInlineFun(std::set<std::string>& ,
111 : std::set<std::string>& ) SAL_OVERRIDE;
112 :
113 0 : virtual std::string BinFuncName() const SAL_OVERRIDE {
114 0 : return "IPMT"; }
115 : };
116 :
117 0 : class OpISPMT: public Normal
118 : {
119 : public:
120 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
121 :
122 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
123 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
124 :
125 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "ISPMT"; }
126 : };
127 :
128 0 : class OpDuration: public Normal
129 : {
130 : public:
131 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
132 :
133 : virtual void GenSlidingWindowFunction(std::stringstream& ss,
134 : const std::string &sSymName, SubArguments& vSubArguments) SAL_OVERRIDE;
135 :
136 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Duration"; }
137 : };
138 :
139 0 : class OpDuration_ADD: public Normal
140 : {
141 : public:
142 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
143 :
144 : virtual void GenSlidingWindowFunction(std::stringstream& ss,
145 : const std::string &sSymName, SubArguments& vSubArguments) SAL_OVERRIDE;
146 : virtual void BinInlineFun(std::set<std::string>& ,
147 : std::set<std::string>& ) SAL_OVERRIDE;
148 :
149 0 : virtual std::string BinFuncName() const SAL_OVERRIDE {
150 0 : return "Duration_ADD"; }
151 : };
152 0 : class OpMDuration: public Normal
153 : {
154 : public:
155 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
156 :
157 : virtual void GenSlidingWindowFunction(std::stringstream& ss,
158 : const std::string &sSymName, SubArguments& vSubArguments) SAL_OVERRIDE;
159 : virtual void BinInlineFun(std::set<std::string>& ,
160 : std::set<std::string>& ) SAL_OVERRIDE;
161 :
162 0 : virtual std::string BinFuncName() const SAL_OVERRIDE {return "MDuration"; }
163 : };
164 :
165 0 : class Fvschedule: public Normal
166 : {
167 : public:
168 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
169 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
170 : };
171 :
172 0 : class Cumipmt: public Normal
173 : {
174 : public:
175 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
176 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
177 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
178 : };
179 :
180 0 : class IRR: public Normal
181 : {
182 : public:
183 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
184 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
185 : };
186 :
187 0 : class OpIRR: public IRR
188 : {
189 : public:
190 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
191 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "IRR"; }
192 : };
193 :
194 0 : class XNPV: public Normal
195 : {
196 : public:
197 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
198 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
199 : };
200 :
201 0 : class PriceMat: public Normal
202 : {
203 : public:
204 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
205 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
206 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
207 : };
208 0 : class OpSYD: public Normal
209 : {
210 : public:
211 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
212 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
213 :
214 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "SYD"; }
215 : };
216 :
217 0 : class MIRR: public Normal
218 : {
219 : public:
220 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
221 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
222 : };
223 :
224 0 : class OpEffective:public Normal
225 : {
226 : public:
227 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
228 :
229 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
230 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
231 :
232 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Effect_Add"; }
233 : };
234 :
235 0 : class OpCumipmt: public Cumipmt
236 : {
237 : public:
238 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
239 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Cumipmt"; }
240 : };
241 :
242 0 : class OpXNPV: public XNPV
243 : {
244 : public:
245 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
246 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "XNPV"; }
247 :
248 : };
249 :
250 0 : class OpTbilleq: public Normal
251 : {
252 : public:
253 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
254 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
255 :
256 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "fTbilleq"; }
257 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
258 : };
259 :
260 0 : class OpCumprinc: public Normal
261 : {
262 : public:
263 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
264 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
265 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
266 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
267 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "cumprinc"; }
268 : };
269 :
270 0 : class OpAccrintm: public Normal
271 : {
272 : public:
273 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
274 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
275 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
276 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
277 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Accrintm"; }
278 : };
279 0 : class OpAccrint: public Normal
280 : {
281 : public:
282 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>&) SAL_OVERRIDE;
283 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
284 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
285 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Accrint"; }
286 : };
287 :
288 0 : class OpYield: public Normal
289 : {
290 : public:
291 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
292 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
293 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Yield"; }
294 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
295 : };
296 :
297 0 : class OpSLN: public Normal
298 : {
299 : public:
300 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
301 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
302 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "SLN"; }
303 : };
304 :
305 0 : class OpFvschedule: public Fvschedule
306 : {
307 : public:
308 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
309 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Fvschedule"; }
310 : };
311 :
312 0 : class OpYieldmat: public Normal
313 : {
314 : public:
315 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
316 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
317 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Yieldmat"; }
318 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
319 : };
320 :
321 0 : class OpPMT: public Normal
322 : {
323 : public:
324 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
325 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
326 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "PMT"; }
327 : };
328 0 : class OpNPV: public Normal
329 : {
330 : public:
331 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
332 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
333 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "NPV"; }
334 : };
335 :
336 0 : class OpPrice: public Normal
337 : {
338 : public:
339 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
340 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
341 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
342 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Price"; }
343 : };
344 :
345 0 : class OpNper: public Normal
346 : {
347 : public:
348 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
349 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
350 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "NPER"; }
351 : };
352 0 : class OpOddlprice: public Normal
353 : {
354 : public:
355 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
356 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
357 : virtual void BinInlineFun(std::set<std::string>&,
358 : std::set<std::string>& ) SAL_OVERRIDE;
359 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Oddlprice"; }
360 : };
361 0 : class OpOddlyield: public Normal
362 : {
363 : public:
364 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
365 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
366 : virtual void BinInlineFun(std::set<std::string>& ,
367 : std::set<std::string>& ) SAL_OVERRIDE;
368 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Oddlyield"; }
369 : };
370 0 : class OpPriceDisc: public Normal
371 : {
372 : public:
373 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
374 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
375 : virtual void BinInlineFun(std::set<std::string>&,
376 : std::set<std::string>& ) SAL_OVERRIDE;
377 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "PriceDisc"; }
378 : };
379 0 : class OpPPMT: public Normal
380 : {
381 : public:
382 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
383 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
384 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
385 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "PPMT"; }
386 : };
387 :
388 0 : class OpCoupdaybs:public Normal
389 : {
390 : public:
391 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0";}
392 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
393 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
394 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
395 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Coupdaybs"; }
396 :
397 : };
398 :
399 0 : class OpCoupdays:public Normal
400 : {
401 : public:
402 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0";}
403 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
404 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
405 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
406 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Coupdays";}
407 :
408 : };
409 :
410 0 : class OpCoupdaysnc:public Normal
411 : {
412 : public:
413 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0";}
414 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
415 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
416 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
417 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Coupdaysnc"; }
418 :
419 : };
420 :
421 0 : class OpCouppcd:public Normal
422 : {
423 : public:
424 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
425 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
426 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
427 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Couppcd"; }
428 :
429 : };
430 :
431 0 : class OpCoupncd:public Normal
432 : {
433 : public:
434 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
435 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
436 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>&) SAL_OVERRIDE;
437 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Coupncd"; }
438 :
439 : };
440 :
441 0 : class OpCoupnum:public Normal
442 : {
443 : public:
444 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0";}
445 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
446 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
447 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>&) SAL_OVERRIDE;
448 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Coupnum"; }
449 :
450 : };
451 0 : class OpDDB:public Normal
452 : {
453 : public:
454 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
455 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
456 :
457 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "DDB"; }
458 : };
459 0 : class OpDB:public Normal
460 : {
461 : public:
462 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
463 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
464 :
465 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "DB"; }
466 : };
467 0 : class OpAmordegrc:public Normal
468 : {
469 : public:
470 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0";}
471 : virtual void GenSlidingWindowFunction(std::stringstream& ss,
472 : const std::string &sSymName, SubArguments& vSubArguments) SAL_OVERRIDE;
473 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>&) SAL_OVERRIDE;
474 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Amordegrc"; }
475 : };
476 0 : class OpAmorlinc:public Normal
477 : {
478 : public:
479 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0";}
480 : virtual void GenSlidingWindowFunction(std::stringstream& ss,
481 : const std::string &sSymName, SubArguments& vSubArguments) SAL_OVERRIDE;
482 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>&) SAL_OVERRIDE;
483 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Amorlinc"; }
484 : };
485 :
486 0 : class OpReceived:public Normal
487 : {
488 : public:
489 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
490 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
491 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
492 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Received"; }
493 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
494 : };
495 :
496 0 : class OpYielddisc: public Normal
497 : {
498 : public:
499 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
500 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
501 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Yielddisc"; }
502 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
503 : };
504 :
505 0 : class OpTbillprice: public CheckVariables
506 : {
507 : public:
508 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
509 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
510 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "fTbillprice"; }
511 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
512 : };
513 :
514 0 : class OpPriceMat:public PriceMat
515 : {
516 : public:
517 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
518 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "PriceMat"; }
519 : };
520 :
521 0 : class RATE: public Normal
522 : {
523 : public:
524 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
525 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
526 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
527 : };
528 0 : class OpIntrate: public RATE {
529 : public:
530 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
531 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "rate"; }
532 : };
533 :
534 0 : class OpTbillyield: public Normal
535 : {
536 : public:
537 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
538 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
539 :
540 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "fTbillyield"; }
541 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
542 : };
543 :
544 0 : class OpMIRR: public MIRR
545 : {
546 : public:
547 0 : virtual std::string GetBottom() SAL_OVERRIDE { return "0"; }
548 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "MIRR"; }
549 : };
550 :
551 0 : class OpPV: public Normal
552 : {
553 : public:
554 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
555 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
556 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "PV"; }
557 : };
558 :
559 0 : class OpVDB: public CheckVariables
560 : {
561 : public:
562 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
563 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
564 :
565 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "VDB"; }
566 : virtual void BinInlineFun(std::set<std::string>& ,std::set<std::string>& ) SAL_OVERRIDE;
567 : };
568 :
569 0 : class OpXirr: public CheckVariables
570 : {
571 : public:
572 : virtual void GenSlidingWindowFunction(std::stringstream &ss,
573 : const std::string &sSymName, SubArguments &vSubArguments) SAL_OVERRIDE;
574 :
575 0 : virtual std::string BinFuncName() const SAL_OVERRIDE { return "Xirr"; }
576 : };
577 :
578 : }}
579 :
580 : #endif
581 :
582 : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|