Changeset 369 for XIOS/trunk/src/functor
- Timestamp:
- 10/16/12 13:04:44 (12 years ago)
- Location:
- XIOS/trunk/src/functor
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/functor/average.cpp
r335 r369 1 1 #include "average.hpp" 2 #include "array_new.hpp" 2 3 3 4 namespace xios … … 7 8 /// ////////////////////// Définitions ////////////////////// /// 8 9 9 CAverage::CAverage( DoubleArraydoutput)10 CAverage::CAverage(CArray<double,1>& doutput) 10 11 : SuperClass(StdString("average"), doutput) 11 { /* Ne rien faire de plus */ }12 { doutput.dumpStructureInformation(cout) ;/* Ne rien faire de plus */ } 12 13 13 14 CAverage::~CAverage(void) … … 16 17 //--------------------------------------------------------------- 17 18 18 void CAverage::apply(const DoubleArray_dinput,19 DoubleArray_doutput)19 void CAverage::apply(const CArray<double,1>& _dinput, 20 CArray<double,1>& _doutput) 20 21 { 22 /* 21 23 const double * it1 = _dinput->data(), 22 24 * end1 = _dinput->data() + _dinput->num_elements(); … … 25 27 for (; it1 != end1; it1++, it++) *it = *it1; 26 28 else for (; it1 != end1; it1++, it++) *it += *it1; 29 */ 30 if (this->nbcall == 1) _doutput=_dinput ; 31 else _doutput+=_dinput ; 32 27 33 } 28 34 29 35 void CAverage::final(void) 30 36 { 31 double * it1 = this->getDataOutput()->data(),37 /* double * it1 = this->getDataOutput()->data(), 32 38 * end1 = this->getDataOutput()->data() + this->getDataOutput()->num_elements(); 33 39 for (; it1 != end1; it1++) *it1 /= this->nbcall; 34 40 this->nbcall = 0; 41 */ 42 doutput/=this->nbcall; 43 this->nbcall = 0; 35 44 } 36 45 } // namespace func -
XIOS/trunk/src/functor/average.hpp
r335 r369 4 4 /// xmlioserver headers /// 5 5 #include "functor.hpp" 6 #include "array_new.hpp" 6 7 7 8 namespace xios … … 14 15 /// Définition de type /// 15 16 typedef CFunctor SuperClass; 16 typedef ARRAY(double, 1) DoubleArray;17 17 18 18 public : … … 21 21 //CAverage(void); // Not implemented. 22 22 //CAverage(const CFunData & data); 23 CAverage( DoubleArraydoutput);23 CAverage(CArray<double,1>& doutput); 24 24 //CAverage(const CAverage & average); // Not implemented. 25 25 //CAverage(const CAverage * const average); // Not implemented. 26 26 27 27 /// Traitement /// 28 virtual void apply(const DoubleArray dinput, DoubleArraydoutput);28 virtual void apply(const CArray<double,1>& dinput, CArray<double,1>& doutput); 29 29 virtual void final(void) ; 30 30 -
XIOS/trunk/src/functor/instant.cpp
r335 r369 1 1 #include "instant.hpp" 2 #include "array_new.hpp" 2 3 3 4 namespace xios … … 7 8 /// ////////////////////// Définitions ////////////////////// /// 8 9 9 CInstant::CInstant( DoubleArraydoutput)10 CInstant::CInstant(CArray<double,1>& doutput) 10 11 : SuperClass(StdString("instant"), doutput) 11 12 { /* Ne rien faire de plus */ } … … 16 17 //--------------------------------------------------------------- 17 18 18 void CInstant::apply(const DoubleArray_dinput,19 DoubleArray_doutput)19 void CInstant::apply(const CArray<double,1>& _dinput, 20 CArray<double,1>& _doutput) 20 21 { 21 const double * it1 = _dinput->data(),22 /* const double * it1 = _dinput->data(), 22 23 * end1 = _dinput->data() + _dinput->num_elements(); 23 24 double * it = _doutput->data(); 24 for (; it1 != end1; it1++, it++) *it = *it1; 25 for (; it1 != end1; it1++, it++) *it = *it1;*/ 26 _doutput=_dinput ; 25 27 } 26 28 -
XIOS/trunk/src/functor/instant.hpp
r335 r369 4 4 /// xios headers /// 5 5 #include "functor.hpp" 6 #include "array_new.hpp" 6 7 7 8 namespace xios … … 14 15 /// Définition de type /// 15 16 typedef CFunctor SuperClass; 16 typedef ARRAY(double, 1) DoubleArray;17 17 18 18 public : … … 21 21 //CInstant(void); // Not implemented. 22 22 //CInstant(const CFunData & data); 23 CInstant( DoubleArraydoutput);23 CInstant(CArray<double,1>& doutput); 24 24 //CInstant(const CInstant & instant); // Not implemented. 25 25 //CInstant(const CInstant * const instant); // Not implemented. 26 26 27 27 /// Traitement /// 28 virtual void apply(const DoubleArray dinput, DoubleArraydoutput);28 virtual void apply(const CArray<double,1>& dinput, CArray<double,1>& doutput); 29 29 30 30 /// Destructeur /// -
XIOS/trunk/src/functor/maximum.cpp
r335 r369 1 1 #include "maximum.hpp" 2 #include <algorithm> 2 #include "array_new.hpp" 3 3 4 4 5 … … 9 10 /// ////////////////////// Définitions ////////////////////// /// 10 11 11 CMaximum::CMaximum( DoubleArraydoutput)12 CMaximum::CMaximum(CArray<double,1>& doutput) 12 13 : SuperClass(StdString("maximum"), doutput) 13 14 { /* Ne rien faire de plus */ } … … 18 19 //--------------------------------------------------------------- 19 20 20 void CMaximum::apply(const DoubleArray_dinput,21 DoubleArray_doutput)21 void CMaximum::apply(const CArray<double,1>& _dinput, 22 CArray<double,1>& _doutput) 22 23 { 23 const double * it1 = _dinput->data(), 24 * end1 = _dinput->data() + _dinput->num_elements(); 25 double * it = _doutput->data(); 26 if (this->nbcall == 1) 27 for (; it1 != end1; it1++, it++) *it = *it1; 24 const double * it1 = _dinput.dataFirst(), 25 * end1 = _dinput.dataFirst() + _dinput.numElements(); 26 double * it = _doutput.dataFirst(); 27 if (this->nbcall == 1) for (; it1 != end1; it1++, it++) *it = *it1; 28 28 else for (; it1 != end1; it1++, it++) *it = std::max(*it1, *it); 29 29 30 it1 = _dinput->data(), 31 end1 = _dinput->data() + _dinput->num_elements(); 32 it = _doutput->data(); 33 double sum=0 ; 34 for (; it1 != end1; it1++, it++) sum+=*it; 30 35 31 } 36 32 -
XIOS/trunk/src/functor/maximum.hpp
r335 r369 4 4 /// xios headers /// 5 5 #include "functor.hpp" 6 #include "array_new.hpp" 6 7 7 8 namespace xios … … 14 15 /// Définition de type /// 15 16 typedef CFunctor SuperClass; 16 typedef ARRAY(double, 1) DoubleArray;17 17 18 18 public : … … 21 21 //CMaximum(void); // Not implemented. 22 22 //CMaximum(const CFunData & data); 23 CMaximum( DoubleArraydoutput);23 CMaximum(CArray<double,1>& doutput); 24 24 //CMaximum(const CMaximum & Maximum); // Not implemented. 25 25 //CMaximum(const CMaximum * const Maximum); // Not implemented. 26 26 27 27 /// Traitement /// 28 virtual void apply(const DoubleArray dinput, DoubleArraydoutput);28 virtual void apply(const CArray<double,1>& dinput, CArray<double,1>& doutput); 29 29 30 30 /// Destructeur /// -
XIOS/trunk/src/functor/minimum.cpp
r335 r369 1 1 #include "minimum.hpp" 2 #include "array_new.hpp" 3 #include <algorithm> 2 4 3 5 namespace xios … … 7 9 /// ////////////////////// Définitions ////////////////////// /// 8 10 9 CMinimum::CMinimum( DoubleArraydoutput)11 CMinimum::CMinimum(CArray<double,1>& doutput) 10 12 : SuperClass(StdString("minimum"), doutput) 11 13 { /* Ne rien faire de plus */ } … … 16 18 //--------------------------------------------------------------- 17 19 18 void CMinimum::apply(const DoubleArray_dinput,19 DoubleArray_doutput)20 void CMinimum::apply(const CArray<double,1>& _dinput, 21 CArray<double,1>& _doutput) 20 22 { 21 const double * it1 = _dinput->data(), 22 * end1 = _dinput->data() + _dinput->num_elements(); 23 double * it = _doutput->data(); 24 if (this->nbcall == 1) 25 for (; it1 != end1; it1++, it++) *it = *it1; 26 else for (; it1 != end1; it1++, it++) *it = std::min(*it1, *it); 23 const double * it1 = _dinput.dataFirst(), 24 * end1 = _dinput.dataFirst() + _dinput.numElements(); 25 double * it = _doutput.dataFirst(); 26 27 if (this->nbcall == 1) for (; it1 != end1; it1++, it++) *it = *it1; 28 else for (; it1 != end1; it1++, it++) *it = std::min(*it1, *it); 29 27 30 } 28 31 -
XIOS/trunk/src/functor/minimum.hpp
r335 r369 4 4 /// xmlioserver headers /// 5 5 #include "functor.hpp" 6 #include "array_new.hpp" 6 7 7 8 namespace xios … … 14 15 /// Définition de type /// 15 16 typedef CFunctor SuperClass; 16 typedef ARRAY(double, 1) DoubleArray;17 17 18 18 public : … … 21 21 //CMinimum(void); // Not implemented. 22 22 //CMinimum(const CFunData & data); 23 CMinimum( DoubleArraydoutput);23 CMinimum(CArray<double,1>& doutput); 24 24 //CMinimum(const CMinimum & Minimum); // Not implemented. 25 25 //CMinimum(const CMinimum * const Minimum); // Not implemented. 26 26 27 27 /// Traitement /// 28 virtual void apply(const DoubleArray dinput, DoubleArraydoutput);28 virtual void apply(const CArray<double,1>& dinput, CArray<double,1>& doutput); 29 29 30 30 /// Destructeur /// -
XIOS/trunk/src/functor/once.cpp
r335 r369 1 1 #include "once.hpp" 2 #include "array_new.hpp" 2 3 3 4 namespace xios … … 7 8 /// ////////////////////// Définitions ////////////////////// /// 8 9 9 COnce::COnce( DoubleArraydoutput)10 COnce::COnce(CArray<double,1>& doutput) 10 11 : SuperClass(StdString("once"), doutput) 11 12 { /* Ne rien faire de plus */ } … … 16 17 //--------------------------------------------------------------- 17 18 18 void COnce::apply(const DoubleArray_dinput,19 DoubleArray_doutput)19 void COnce::apply(const CArray<double,1>& _dinput, 20 CArray<double,1>& _doutput) 20 21 { 21 const double * it1 = _dinput->data(),22 /* const double * it1 = _dinput->data(), 22 23 * end1 = _dinput->data() + _dinput->num_elements(); 23 24 double * it = _doutput->data(); 24 for (; it1 != end1; it1++, it++) *it = *it1; 25 for (; it1 != end1; it1++, it++) *it = *it1;*/ 26 _doutput=_dinput ; 25 27 } 26 28 -
XIOS/trunk/src/functor/once.hpp
r335 r369 4 4 /// xios headers /// 5 5 #include "functor.hpp" 6 #include "array_new.hpp" 6 7 7 8 namespace xios … … 14 15 /// Définition de type /// 15 16 typedef CFunctor SuperClass; 16 typedef ARRAY(double, 1) DoubleArray;17 17 18 18 public : … … 20 20 /// Constructeurs /// 21 21 //COnce(void); // Not implemented. 22 COnce( DoubleArraydoutput);22 COnce(CArray<double,1>& doutput); 23 23 //COnce(const COnce & once); // Not implemented. 24 24 //COnce(const COnce * const once); // Not implemented. 25 25 26 26 /// Traitement /// 27 virtual void apply(const DoubleArray dinput, DoubleArraydoutput);27 virtual void apply(const CArray<double,1>& dinput, CArray<double,1>& doutput); 28 28 29 29 /// Destructeur ///
Note: See TracChangeset
for help on using the changeset viewer.