source: XIOS/trunk/src/node/reorder_domain.cpp @ 1542

Last change on this file since 1542 was 1457, checked in by ymipsl, 6 years ago

Add new domain filter : reorder_domain
Reoder the data along the global domain but works only for rectilinear domain

  • invert_lat : invert the latitute axis
  • shift_lon_fraction : shift the longitude axis of a fration of global size
  • lon_min/lon_max : fixe the range of longitude value (ex : -180:180 or 0:360)

YM

  • Property svn:eol-style set to native
File size: 1.4 KB
Line 
1#include "reorder_domain.hpp"
2#include "type.hpp"
3
4namespace xios {
5
6  /// ////////////////////// Définitions ////////////////////// ///
7
8  CReorderDomain::CReorderDomain(void)
9    : CObjectTemplate<CReorderDomain>(), CReorderDomainAttributes(), CTransformation<CDomain>()
10  { /* Ne rien faire de plus */ }
11
12  CReorderDomain::CReorderDomain(const StdString & id)
13    : CObjectTemplate<CReorderDomain>(id), CReorderDomainAttributes(), CTransformation<CDomain>()
14  { /* Ne rien faire de plus */ }
15
16  CReorderDomain::~CReorderDomain(void)
17  {}
18
19  CTransformation<CDomain>* CReorderDomain::create(const StdString& id, xml::CXMLNode* node)
20  {
21    CReorderDomain* reorderDomain = CReorderDomainGroup::get("reorder_domain_definition")->createChild(id);
22    if (node) reorderDomain->parse(*node);
23    return static_cast<CTransformation<CDomain>*>(reorderDomain);
24  }
25
26  bool CReorderDomain::_dummyRegistered = CReorderDomain::registerTrans();
27  bool CReorderDomain::registerTrans()
28  {
29    registerTransformation(TRANS_REORDER_DOMAIN, CReorderDomain::create);
30  }
31
32  //----------------------------------------------------------------
33
34  StdString CReorderDomain::GetName(void)    { return StdString("reorder_domain"); }
35  StdString CReorderDomain::GetDefName(void) { return StdString("reorder_domain"); }
36  ENodeType CReorderDomain::GetType(void)    { return eReorderDomain; }
37
38  void CReorderDomain::checkValid(CDomain* domainSrc)
39  {
40   
41  }
42
43}
Note: See TracBrowser for help on using the repository browser.