ladanyi@53: #ifndef XYMAP_H ladanyi@53: #define XYMAP_H ladanyi@53: ladanyi@53: #include hegyi@150: #include ladanyi@53: ladanyi@53: template ladanyi@53: class XYMap ladanyi@53: { ladanyi@53: private: ladanyi@53: M *xmap, *ymap; ladanyi@53: ladanyi@53: public: ladanyi@53: typedef typename M::Key Key; hegyi@150: typedef lemon::dim2::Point Value; ladanyi@53: XYMap() {} ladanyi@53: XYMap(M &_xmap, M &_ymap) : xmap(&_xmap), ymap(&_ymap) {} ladanyi@53: void setXMap(M &_xmap) { xmap = &_xmap; } ladanyi@53: void setYMap(M &_ymap) { ymap = &_ymap; } ladanyi@53: Value operator[](Key k) const ladanyi@53: { ladanyi@53: Value v(xmap->operator[](k), ymap->operator[](k)); ladanyi@53: return v; ladanyi@53: } ladanyi@53: void set(Key k, Value v) ladanyi@53: { ladanyi@53: xmap->set(k, v.x); ladanyi@53: ymap->set(k, v.y); ladanyi@53: } ladanyi@53: }; ladanyi@53: ladanyi@53: #endif