source: XIOS/trunk/src/transformation/Functions/max.hpp @ 888

Last change on this file since 888 was 888, checked in by mhnguyen, 5 years ago

Adding new transformation for scalar: Reducing an axis to a scalar

+) Add new xml node for new transformation
+) Add new algorithms for axis reduction
+) Make change in some place to make sure everything work fine

Test
+) On Curie
+) Tests pass and are correct

File size: 838 bytes
Line 
1/*!
2   \file max.hpp
3   \author Ha NGUYEN
4   \since 27 June 2016
5   \date 27 June 2016
6
7   \brief Max reduction
8 */
9#ifndef __XIOS_REDUCTION_MAX_ALGORITHM_HPP__
10#define __XIOS_REDUCTION_MAX_ALGORITHM_HPP__
11
12#include "reduction.hpp"
13
14namespace xios {
15
16/*!
17  \class CMaxReductionAlgorithm
18  Interface for all reduction alogrithms.
19*/
20class CMaxReductionAlgorithm : public CReductionAlgorithm
21{
22public:
23  CMaxReductionAlgorithm();
24
25  virtual void apply(const std::vector<std::pair<int,double> >& localIndex,
26                     const double* dataInput,
27                     CArray<double,1>& dataOut,
28                     std::vector<bool>& flagInitial);
29
30  virtual ~CMaxReductionAlgorithm() {}
31
32public:
33  static bool registerTrans();
34
35protected:
36  static CReductionAlgorithm* create();
37};
38
39}
40#endif // __XIOS_REDUCTION_MAX_ALGORITHM_HPP__
Note: See TracBrowser for help on using the repository browser.