00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef _ARITH_H
00010 #define _ARITH_H
00011
00012 class Arith
00013 {
00014 friend void testCopyMsgOps();
00015 friend void testTicks();
00016
00017 public:
00018 Arith();
00019 void process( const Eref& e, ProcPtr p );
00020 void reinit( const Eref& e, ProcPtr p );
00021
00025 void addSpike( unsigned int synIndex, const double time );
00026
00028
00030
00031 void setFunction( string v );
00032 string getFunction() const;
00033 void setOutput( double v );
00034 double getOutput() const;
00035
00036 void setIdentifiedArg( unsigned int i, double val );
00037 double getIdentifiedArg( unsigned int i ) const;
00038
00040
00042
00043 void arg1( double v );
00044 void arg2( double v );
00045 void arg3( double v );
00046
00047 void arg1x2( double arg1, double arg2 );
00048
00050
00052
00053 double getArg1() const;
00055
00056 static const Cinfo* initCinfo();
00057 private:
00058 string function_;
00059 double output_;
00060 double arg1_;
00061 double arg2_;
00062 double arg3_;
00063 };
00064
00065 #endif // _ARITH_H