/////////////////////////////////////////////////////////////////////////// /// The current minimum bounding rectangle is extended to enclose the /// rectangle passed to this method. /// \param[in] in current rectangle read from input stream /// \param[in] sfin (scan flag) /////////////////////////////////////////////////////////////////////////// err operate(const rectangle<coord_t, oid_t> &in, SCAN_FLAG *sfin) { if (*sfin) { if (mbr.get_id() == MAGIC_NUMBER_UNINITIALIZED_RECTANGLE) { mbr = in; // ...un-hack. mbr.set_id(0); } else { mbr.extend(in); } } else { out->write((char *) &mbr, sizeof(mbr)); std::cerr << " " << mbr.get_left() << " " << mbr.get_lower() << " " << mbr.get_right() << " " << mbr.get_upper() << " "; return SCAN_DONE; } return SCAN_CONTINUE; }