in src/RPIServiceImpl.cpp [356:391]
void fillMessage(Figure* message, const graphics::Figure& figure) {
switch (figure.getKind()) {
case graphics::FigureKind::CIRCLE: {
message->set_allocated_circle(createMessage<graphics::CircleFigure>(figure));
break;
}
case graphics::FigureKind::LINE: {
message->set_allocated_line(createMessage<graphics::LineFigure>(figure));
break;
}
case graphics::FigureKind::PATH: {
message->set_allocated_path(createMessage<graphics::PathFigure>(figure));
break;
}
case graphics::FigureKind::POLYGON: {
message->set_allocated_polygon(createMessage<graphics::PolygonFigure>(figure));
break;
}
case graphics::FigureKind::POLYLINE: {
message->set_allocated_polyline(createMessage<graphics::PolylineFigure>(figure));
break;
}
case graphics::FigureKind::RASTER: {
message->set_allocated_raster(createMessage<graphics::RasterFigure>(figure));
break;
}
case graphics::FigureKind::RECTANGLE: {
message->set_allocated_rectangle(createMessage<graphics::RectangleFigure>(figure));
break;
}
case graphics::FigureKind::TEXT: {
message->set_allocated_text(createMessage<graphics::TextFigure>(figure));
break;
}
}
}