• Main Page
  • Modules
  • Classes
  • Files
  • File List

D:/Projekt/ECF_trunk/ECF/tree/Sub.h

00001 #ifndef Sub_h
00002 #define Sub_h
00003 #include "Primitive.h"
00004 
00005 namespace Tree {
00006 namespace Primitives {
00007 
00012 template <class T>
00013 class SubT : public Primitive
00014 {
00015 public:
00016     SubT(void);
00017     void execute(void* result, Tree& tree);
00018     ~SubT(void);
00019 };
00020 typedef SubT<double> Sub;
00021 
00022 template <class T>
00023 SubT<T>::SubT(void)
00024 {
00025     nArguments_ = 2;
00026     name_ = "-";
00027     complementName_ = "+";
00028 }
00029 
00030 
00031 template <class T>
00032 SubT<T>::~SubT(void)
00033 {
00034 }
00035 
00036 template <class T>
00037 void SubT<T>::execute(void* result, Tree& tree)
00038 {   
00039     T prvi, drugi;
00040     T& res = *(T*)result;
00041     getNextArgument(&prvi, tree);
00042     getNextArgument(&drugi, tree);
00043     res = prvi - drugi;
00044 }
00045 
00046 }
00047 }
00048 
00049 #endif

Generated on Tue Nov 4 2014 13:04:30 for ECF by  doxygen 1.7.1