Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

TupleVariableCopy.h

Go to the documentation of this file.
00001 // Emacs -*- C++ -*-
00002 #ifndef TUPLE_VARIABLE_COPY_H
00003 #define TUPLE_VARIABLE_COPY_H
00004 
00005 #include "AIDA/ITuple.h"
00006 
00007 namespace Anaphe {
00008   namespace AIDA_Tuple_native {
00009 
00010 // A small class for automatic lookup of a method
00011 class TupleVariableCopyBase {
00012 public:
00013   virtual ~TupleVariableCopyBase(){}
00014   virtual void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00015                                   int columnFrom,
00016                                   AIDA::ITuple& tupleTo,
00017                                   int columnTo ) const = 0;
00018 };
00019 
00020 class TupleVarialbeCopyDouble : virtual public TupleVariableCopyBase {
00021 public:
00022   TupleVarialbeCopyDouble(){}
00023   ~TupleVarialbeCopyDouble(){}
00024   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00025                           int columnFrom,
00026                           AIDA::ITuple& tupleTo,
00027                           int columnTo ) const
00028   {
00029     tupleTo.fill( columnTo, tupleFrom.getDouble( columnFrom ) );
00030   }
00031 
00032 };
00033 
00034 
00035 class TupleVarialbeCopyFloat : virtual public TupleVariableCopyBase {
00036 public:
00037   TupleVarialbeCopyFloat(){}
00038   ~TupleVarialbeCopyFloat(){}
00039   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00040                           int columnFrom,
00041                           AIDA::ITuple& tupleTo,
00042                           int columnTo ) const
00043   {
00044     tupleTo.fill( columnTo, tupleFrom.getFloat( columnFrom ) );
00045   }
00046 
00047 };
00048 
00049 
00050 class TupleVarialbeCopyLong : virtual public TupleVariableCopyBase {
00051 public:
00052   TupleVarialbeCopyLong(){}
00053   ~TupleVarialbeCopyLong(){}
00054   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00055                           int columnFrom,
00056                           AIDA::ITuple& tupleTo,
00057                           int columnTo ) const
00058   {
00059     tupleTo.fill( columnTo, tupleFrom.getLong( columnFrom ) );
00060   }
00061 
00062 };
00063 
00064 
00065 class TupleVarialbeCopyInt : virtual public TupleVariableCopyBase {
00066 public:
00067   TupleVarialbeCopyInt(){}
00068   ~TupleVarialbeCopyInt(){}
00069   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00070                           int columnFrom,
00071                           AIDA::ITuple& tupleTo,
00072                           int columnTo ) const
00073   {
00074     tupleTo.fill( columnTo, tupleFrom.getInt( columnFrom ) );
00075   }
00076 
00077 };
00078 
00079 
00080 class TupleVarialbeCopyShort : virtual public TupleVariableCopyBase {
00081 public:
00082   TupleVarialbeCopyShort(){}
00083   ~TupleVarialbeCopyShort(){}
00084   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00085                           int columnFrom,
00086                           AIDA::ITuple& tupleTo,
00087                           int columnTo ) const
00088   {
00089     tupleTo.fill( columnTo, tupleFrom.getShort( columnFrom ) );
00090   }
00091 
00092 };
00093 
00094 
00095 class TupleVarialbeCopyChar : virtual public TupleVariableCopyBase {
00096 public:
00097   TupleVarialbeCopyChar(){}
00098   ~TupleVarialbeCopyChar(){}
00099   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00100                           int columnFrom,
00101                           AIDA::ITuple& tupleTo,
00102                           int columnTo ) const
00103   {
00104     tupleTo.fill( columnTo, tupleFrom.getChar( columnFrom ) );
00105   }
00106 
00107 };
00108 
00109 
00110 class TupleVarialbeCopyString : virtual public TupleVariableCopyBase {
00111 public:
00112   TupleVarialbeCopyString(){}
00113   ~TupleVarialbeCopyString(){}
00114   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00115                           int columnFrom,
00116                           AIDA::ITuple& tupleTo,
00117                           int columnTo ) const
00118   {
00119     tupleTo.fill( columnTo, tupleFrom.getString( columnFrom ) );
00120   }
00121 
00122 };
00123 
00124 
00125 class TupleVarialbeCopyBoolean : virtual public TupleVariableCopyBase {
00126 public:
00127   TupleVarialbeCopyBoolean(){}
00128   ~TupleVarialbeCopyBoolean(){}
00129   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00130                           int columnFrom,
00131                           AIDA::ITuple& tupleTo,
00132                           int columnTo ) const
00133   {
00134     tupleTo.fill( columnTo, tupleFrom.getBoolean( columnFrom ) );
00135   }
00136 
00137 };
00138 
00139 
00140 class TupleVarialbeCopyTuple : virtual public TupleVariableCopyBase {
00141 public:
00142   TupleVarialbeCopyTuple(){}
00143   ~TupleVarialbeCopyTuple(){}
00144   void copyTupleVariable( const AIDA::ITuple& tupleFrom,
00145                           int columnFrom,
00146                           AIDA::ITuple& tupleTo,
00147                           int columnTo ) const;
00148 };
00149 
00150 
00151   }
00152 }
00153 #endif

Generated on Tue Feb 18 17:51:19 2003 for AIDA_Tuple_native by doxygen1.2.16