[grid.boundaryinfo] use std::shared_ptr