libopenfpga/libarchopenfpga/src/read_xml_tile_annotation.cpp
/********************************************************************
 * Top function to parse XML description about tile annotation 
 *******************************************************************/
Top function to parse XML description about tile annotation
Top function to parse XML description about tile annotation
openfpga::TileAnnotation read_xml_tile_annotations(pugi::xml_node& Node,
                                                   const pugiutil::loc_data& loc_data) {
  openfpga::TileAnnotation tile_annotations;
  pugi::xml_node xml_annotations = get_single_child(Node, "tile_annotations", loc_data, pugiutil::ReqOpt::OPTIONAL);
  if (!xml_annotations) {
    return tile_annotations;
  }
  for (pugi::xml_node xml_tile_global_port : xml_annotations.children()) {
    if (xml_tile_global_port.name() != std::string("global_port")) {
      bad_tag(xml_tile_global_port, loc_data, xml_annotations, {"global_port"});
    }
    read_xml_tile_global_port_annotation(xml_tile_global_port, loc_data, tile_annotations);
  } 
  return tile_annotations;
}
openfpga :: TileAnnotation read_xml_tile_annotations ( pugi :: xml_node & Node , const pugiutil :: loc_data & loc_data ) { openfpga :: TileAnnotation tile_annotations ; pugi :: xml_node xml_annotations = get_single_child ( Node , " " , loc_data , pugiutil :: ReqOpt :: OPTIONAL ) ; if ( ! xml_annotations ) { return tile_annotations ; } for ( pugi :: xml_node xml_tile_global_port : xml_annotations . children ( ) ) { if ( xml_tile_global_port . name ( ) != std :: string ( " " ) ) { bad_tag ( xml_tile_global_port , loc_data , xml_annotations , { " " } ) ; } read_xml_tile_global_port_annotation ( xml_tile_global_port , loc_data , tile_annotations ) ; } return tile_annotations ; }
Top function to parse XML description about tile annotation
Top function to parse XML description about tile annotation
/* Parse configuration protocol root node */ /* Not found, we can return */ /* Iterate over the children under this node,
   * each child should be named after <pb_type>
   */ /* Error out if the XML child has an invalid name! */