#ifndef __GRID_ELEMENTS_HPP__ #define __GRID_ELEMENTS_HPP__ #include "xios_spl.hpp" #include "array_new.hpp" #include "element.hpp" namespace xios { class CGridLocalView ; class CGridLocalConnector ; class CGridLocalElements { private: std::vector elements_ ; std::vector views_= std::vector(CElementView::numViewType_) ; std::map, CGridLocalConnector*> connectors_ ; vector localMask_ ; public: CGridLocalElements(vector elements) : elements_(elements) {} CGridLocalElements(vector elements, vector& localMask) : elements_(elements), localMask_(localMask) {} bool hasLocalMask() { return !localMask_.empty() ;} vector& getLocalMask(void) { return localMask_ ;} std::vector& getElements(void) { return elements_ ; } CGridLocalView* getView(CElementView::type type) ; CGridLocalConnector* getConnector(CElementView::type srcType, CElementView::type dstType, bool withMask=false) ; } ; } #endif