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

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

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

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