545 cyclus::Facility::InfileToDb(tree, di);
546 int rawcycpp_shape_latitude[1] = {-1};
547 cycpp_shape_latitude = std::vector<int>(rawcycpp_shape_latitude, rawcycpp_shape_latitude + 1);
548 int rawcycpp_shape_longitude[1] = {-1};
549 cycpp_shape_longitude = std::vector<int>(rawcycpp_shape_longitude, rawcycpp_shape_longitude + 1);
550 int rawcycpp_shape_fuel_incommods[2] = {-1, -1};
552 int rawcycpp_shape_fuel_inrecipes[2] = {-1, -1};
554 int rawcycpp_shape_fuel_prefs[2] = {-1, -1};
556 int rawcycpp_shape_fuel_outcommods[2] = {-1, -1};
558 int rawcycpp_shape_fuel_outrecipes[2] = {-1, -1};
560 int rawcycpp_shape_recipe_change_times[2] = {-1, -1};
562 int rawcycpp_shape_recipe_change_commods[2] = {-1, -1};
564 int rawcycpp_shape_recipe_change_in[2] = {-1, -1};
566 int rawcycpp_shape_recipe_change_out[2] = {-1, -1};
568 int rawcycpp_shape_assem_size[1] = {-1};
570 int rawcycpp_shape_n_assem_batch[1] = {-1};
572 int rawcycpp_shape_n_assem_core[1] = {-1};
574 int rawcycpp_shape_n_assem_fresh[1] = {-1};
576 int rawcycpp_shape_n_assem_spent[1] = {-1};
578 int rawcycpp_shape_cycle_time[1] = {-1};
580 int rawcycpp_shape_refuel_time[1] = {-1};
582 int rawcycpp_shape_cycle_step[1] = {-1};
584 int rawcycpp_shape_power_cap[1] = {-1};
586 int rawcycpp_shape_power_name[1] = {-1};
588 int rawcycpp_shape_side_products[2] = {-1, -1};
590 int rawcycpp_shape_side_product_quantity[2] = {-1, -1};
592 int rawcycpp_shape_hybrid_[1] = {-1};
593 cycpp_shape_hybrid_ = std::vector<int>(rawcycpp_shape_hybrid_, rawcycpp_shape_hybrid_ + 1);
594 int rawcycpp_shape_decom_transmute_all[1] = {-1};
596 int rawcycpp_shape_pref_change_times[2] = {-1, -1};
598 int rawcycpp_shape_pref_change_commods[2] = {-1, -1};
600 int rawcycpp_shape_pref_change_values[2] = {-1, -1};
602 int rawcycpp_shape_keep_packaging[1] = {-1};
604 int rawcycpp_shape_fresh[2] = {-1, -1};
605 cycpp_shape_fresh = std::vector<int>(rawcycpp_shape_fresh, rawcycpp_shape_fresh + 2);
606 int rawcycpp_shape_core[2] = {-1, -1};
607 cycpp_shape_core = std::vector<int>(rawcycpp_shape_core, rawcycpp_shape_core + 2);
608 int rawcycpp_shape_spent[2] = {-1, -1};
609 cycpp_shape_spent = std::vector<int>(rawcycpp_shape_spent, rawcycpp_shape_spent + 2);
610 int rawcycpp_shape_discharged[1] = {-1};
612 int rawcycpp_shape_res_indexes[3] = {-1, -1, -1};
614 cyclus::InfileTree* sub = tree->SubTree(
"config/*");
617 if (sub->NMatches(
"latitude") > 0) {
619 double latitude_val = cyclus::Query<double>(sub,
"latitude");
620 latitude = latitude_val;
623 double latitude_tmp = 0.0;
624 latitude = latitude_tmp;
626 if (sub->NMatches(
"longitude") > 0) {
628 double longitude_val = cyclus::Query<double>(sub,
"longitude");
629 longitude = longitude_val;
632 double longitude_tmp = 0.0;
633 longitude = longitude_tmp;
636 cyclus::InfileTree* bub = sub->SubTree(
"fuel_incommods", 0);
637 cyclus::InfileTree* sub = bub;
638 int n1 = sub->NMatches(
"val");
639 std::vector< std::string > fuel_incommods_val;
640 fuel_incommods_val.resize(n1);
641 for (
int i1 = 0; i1 < n1; ++i1) {
644 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
647 fuel_incommods_val[i1] = elem;
652 cyclus::InfileTree* bub = sub->SubTree(
"fuel_inrecipes", 0);
653 cyclus::InfileTree* sub = bub;
654 int n1 = sub->NMatches(
"val");
655 std::vector< std::string > fuel_inrecipes_val;
656 fuel_inrecipes_val.resize(n1);
657 for (
int i1 = 0; i1 < n1; ++i1) {
660 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
663 fuel_inrecipes_val[i1] = elem;
667 if (sub->NMatches(
"fuel_prefs") > 0) {
669 cyclus::InfileTree* bub = sub->SubTree(
"fuel_prefs", 0);
670 cyclus::InfileTree* sub = bub;
671 int n1 = sub->NMatches(
"val");
672 std::vector< double > fuel_prefs_val;
673 fuel_prefs_val.resize(n1);
674 for (
int i1 = 0; i1 < n1; ++i1) {
677 double elem_in = cyclus::Query<double>(sub,
"val", i1);
680 fuel_prefs_val[i1] = elem;
685 std::vector< double > fuel_prefs_tmp;
686 fuel_prefs_tmp.resize(0);
692 cyclus::InfileTree* bub = sub->SubTree(
"fuel_outcommods", 0);
693 cyclus::InfileTree* sub = bub;
694 int n1 = sub->NMatches(
"val");
695 std::vector< std::string > fuel_outcommods_val;
696 fuel_outcommods_val.resize(n1);
697 for (
int i1 = 0; i1 < n1; ++i1) {
700 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
703 fuel_outcommods_val[i1] = elem;
708 cyclus::InfileTree* bub = sub->SubTree(
"fuel_outrecipes", 0);
709 cyclus::InfileTree* sub = bub;
710 int n1 = sub->NMatches(
"val");
711 std::vector< std::string > fuel_outrecipes_val;
712 fuel_outrecipes_val.resize(n1);
713 for (
int i1 = 0; i1 < n1; ++i1) {
716 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
719 fuel_outrecipes_val[i1] = elem;
723 if (sub->NMatches(
"recipe_change_times") > 0) {
725 cyclus::InfileTree* bub = sub->SubTree(
"recipe_change_times", 0);
726 cyclus::InfileTree* sub = bub;
727 int n1 = sub->NMatches(
"val");
728 std::vector< int > recipe_change_times_val;
729 recipe_change_times_val.resize(n1);
730 for (
int i1 = 0; i1 < n1; ++i1) {
733 int elem_in = cyclus::Query<int>(sub,
"val", i1);
736 recipe_change_times_val[i1] = elem;
741 std::vector< int > recipe_change_times_tmp;
742 recipe_change_times_tmp.resize(0);
747 if (sub->NMatches(
"recipe_change_commods") > 0) {
749 cyclus::InfileTree* bub = sub->SubTree(
"recipe_change_commods", 0);
750 cyclus::InfileTree* sub = bub;
751 int n1 = sub->NMatches(
"val");
752 std::vector< std::string > recipe_change_commods_val;
753 recipe_change_commods_val.resize(n1);
754 for (
int i1 = 0; i1 < n1; ++i1) {
757 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
760 recipe_change_commods_val[i1] = elem;
765 std::vector< std::string > recipe_change_commods_tmp;
766 recipe_change_commods_tmp.resize(0);
771 if (sub->NMatches(
"recipe_change_in") > 0) {
773 cyclus::InfileTree* bub = sub->SubTree(
"recipe_change_in", 0);
774 cyclus::InfileTree* sub = bub;
775 int n1 = sub->NMatches(
"val");
776 std::vector< std::string > recipe_change_in_val;
777 recipe_change_in_val.resize(n1);
778 for (
int i1 = 0; i1 < n1; ++i1) {
781 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
784 recipe_change_in_val[i1] = elem;
789 std::vector< std::string > recipe_change_in_tmp;
790 recipe_change_in_tmp.resize(0);
795 if (sub->NMatches(
"recipe_change_out") > 0) {
797 cyclus::InfileTree* bub = sub->SubTree(
"recipe_change_out", 0);
798 cyclus::InfileTree* sub = bub;
799 int n1 = sub->NMatches(
"val");
800 std::vector< std::string > recipe_change_out_val;
801 recipe_change_out_val.resize(n1);
802 for (
int i1 = 0; i1 < n1; ++i1) {
805 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
808 recipe_change_out_val[i1] = elem;
813 std::vector< std::string > recipe_change_out_tmp;
814 recipe_change_out_tmp.resize(0);
820 double assem_size_val = cyclus::Query<double>(sub,
"assem_size");
824 int n_assem_batch_val = cyclus::Query<int>(sub,
"n_assem_batch");
827 if (sub->NMatches(
"n_assem_core") > 0) {
829 int n_assem_core_val = cyclus::Query<int>(sub,
"n_assem_core");
833 int n_assem_core_tmp = 3;
836 if (sub->NMatches(
"n_assem_fresh") > 0) {
838 int n_assem_fresh_val = cyclus::Query<int>(sub,
"n_assem_fresh");
842 int n_assem_fresh_tmp = 0;
845 if (sub->NMatches(
"n_assem_spent") > 0) {
847 int n_assem_spent_val = cyclus::Query<int>(sub,
"n_assem_spent");
851 int n_assem_spent_tmp = 1000000000;
854 if (sub->NMatches(
"cycle_time") > 0) {
856 int cycle_time_val = cyclus::Query<int>(sub,
"cycle_time");
860 int cycle_time_tmp = 18;
863 if (sub->NMatches(
"refuel_time") > 0) {
865 int refuel_time_val = cyclus::Query<int>(sub,
"refuel_time");
869 int refuel_time_tmp = 1;
872 if (sub->NMatches(
"cycle_step") > 0) {
874 int cycle_step_val = cyclus::Query<int>(sub,
"cycle_step");
878 int cycle_step_tmp = 0;
881 if (sub->NMatches(
"power_cap") > 0) {
883 double power_cap_val = cyclus::Query<double>(sub,
"power_cap");
887 double power_cap_tmp = 0;
890 if (sub->NMatches(
"power_name") > 0) {
892 std::string power_name_val = cyclus::Query<std::string>(sub,
"power_name");
896 std::string power_name_tmp(
"power");
899 if (sub->NMatches(
"side_products") > 0) {
901 cyclus::InfileTree* bub = sub->SubTree(
"side_products", 0);
902 cyclus::InfileTree* sub = bub;
903 int n1 = sub->NMatches(
"val");
904 std::vector< std::string > side_products_val;
905 side_products_val.resize(n1);
906 for (
int i1 = 0; i1 < n1; ++i1) {
909 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
912 side_products_val[i1] = elem;
917 std::vector< std::string > side_products_tmp;
918 side_products_tmp.resize(0);
923 if (sub->NMatches(
"side_product_quantity") > 0) {
925 cyclus::InfileTree* bub = sub->SubTree(
"side_product_quantity", 0);
926 cyclus::InfileTree* sub = bub;
927 int n1 = sub->NMatches(
"val");
928 std::vector< double > side_product_quantity_val;
929 side_product_quantity_val.resize(n1);
930 for (
int i1 = 0; i1 < n1; ++i1) {
933 double elem_in = cyclus::Query<double>(sub,
"val", i1);
936 side_product_quantity_val[i1] = elem;
941 std::vector< double > side_product_quantity_tmp;
942 side_product_quantity_tmp.resize(0);
947 bool hybrid__tmp =
true;
949 if (sub->NMatches(
"decom_transmute_all") > 0) {
951 bool decom_transmute_all_val = cyclus::Query<bool>(sub,
"decom_transmute_all");
955 bool decom_transmute_all_tmp =
false;
958 if (sub->NMatches(
"pref_change_times") > 0) {
960 cyclus::InfileTree* bub = sub->SubTree(
"pref_change_times", 0);
961 cyclus::InfileTree* sub = bub;
962 int n1 = sub->NMatches(
"val");
963 std::vector< int > pref_change_times_val;
964 pref_change_times_val.resize(n1);
965 for (
int i1 = 0; i1 < n1; ++i1) {
968 int elem_in = cyclus::Query<int>(sub,
"val", i1);
971 pref_change_times_val[i1] = elem;
976 std::vector< int > pref_change_times_tmp;
977 pref_change_times_tmp.resize(0);
982 if (sub->NMatches(
"pref_change_commods") > 0) {
984 cyclus::InfileTree* bub = sub->SubTree(
"pref_change_commods", 0);
985 cyclus::InfileTree* sub = bub;
986 int n1 = sub->NMatches(
"val");
987 std::vector< std::string > pref_change_commods_val;
988 pref_change_commods_val.resize(n1);
989 for (
int i1 = 0; i1 < n1; ++i1) {
992 std::string elem_in = cyclus::Query<std::string>(sub,
"val", i1);
995 pref_change_commods_val[i1] = elem;
1000 std::vector< std::string > pref_change_commods_tmp;
1001 pref_change_commods_tmp.resize(0);
1006 if (sub->NMatches(
"pref_change_values") > 0) {
1008 cyclus::InfileTree* bub = sub->SubTree(
"pref_change_values", 0);
1009 cyclus::InfileTree* sub = bub;
1010 int n1 = sub->NMatches(
"val");
1011 std::vector< double > pref_change_values_val;
1012 pref_change_values_val.resize(n1);
1013 for (
int i1 = 0; i1 < n1; ++i1) {
1016 double elem_in = cyclus::Query<double>(sub,
"val", i1);
1019 pref_change_values_val[i1] = elem;
1024 std::vector< double > pref_change_values_tmp;
1025 pref_change_values_tmp.resize(0);
1030 if (sub->NMatches(
"keep_packaging") > 0) {
1032 bool keep_packaging_val = cyclus::Query<bool>(sub,
"keep_packaging");
1036 bool keep_packaging_tmp =
true;
1039 bool discharged_tmp =
false;
1041 std::map< int, int > res_indexes_tmp;
1046 ->AddVal(
"latitude", latitude, &cycpp_shape_latitude)
1047 ->AddVal(
"longitude", longitude, &cycpp_shape_longitude)
1139 int rawcycpp_shape_latitude[1] = {-1};
1140 cycpp_shape_latitude = std::vector<int>(rawcycpp_shape_latitude, rawcycpp_shape_latitude + 1);
1141 int rawcycpp_shape_longitude[1] = {-1};
1142 cycpp_shape_longitude = std::vector<int>(rawcycpp_shape_longitude, rawcycpp_shape_longitude + 1);
1143 int rawcycpp_shape_fuel_incommods[2] = {-1, -1};
1145 int rawcycpp_shape_fuel_inrecipes[2] = {-1, -1};
1147 int rawcycpp_shape_fuel_prefs[2] = {-1, -1};
1149 int rawcycpp_shape_fuel_outcommods[2] = {-1, -1};
1151 int rawcycpp_shape_fuel_outrecipes[2] = {-1, -1};
1153 int rawcycpp_shape_recipe_change_times[2] = {-1, -1};
1155 int rawcycpp_shape_recipe_change_commods[2] = {-1, -1};
1157 int rawcycpp_shape_recipe_change_in[2] = {-1, -1};
1159 int rawcycpp_shape_recipe_change_out[2] = {-1, -1};
1161 int rawcycpp_shape_assem_size[1] = {-1};
1163 int rawcycpp_shape_n_assem_batch[1] = {-1};
1165 int rawcycpp_shape_n_assem_core[1] = {-1};
1167 int rawcycpp_shape_n_assem_fresh[1] = {-1};
1169 int rawcycpp_shape_n_assem_spent[1] = {-1};
1171 int rawcycpp_shape_cycle_time[1] = {-1};
1173 int rawcycpp_shape_refuel_time[1] = {-1};
1175 int rawcycpp_shape_cycle_step[1] = {-1};
1177 int rawcycpp_shape_power_cap[1] = {-1};
1179 int rawcycpp_shape_power_name[1] = {-1};
1181 int rawcycpp_shape_side_products[2] = {-1, -1};
1183 int rawcycpp_shape_side_product_quantity[2] = {-1, -1};
1185 int rawcycpp_shape_hybrid_[1] = {-1};
1186 cycpp_shape_hybrid_ = std::vector<int>(rawcycpp_shape_hybrid_, rawcycpp_shape_hybrid_ + 1);
1187 int rawcycpp_shape_decom_transmute_all[1] = {-1};
1189 int rawcycpp_shape_pref_change_times[2] = {-1, -1};
1191 int rawcycpp_shape_pref_change_commods[2] = {-1, -1};
1193 int rawcycpp_shape_pref_change_values[2] = {-1, -1};
1195 int rawcycpp_shape_keep_packaging[1] = {-1};
1197 int rawcycpp_shape_fresh[2] = {-1, -1};
1198 cycpp_shape_fresh = std::vector<int>(rawcycpp_shape_fresh, rawcycpp_shape_fresh + 2);
1199 int rawcycpp_shape_core[2] = {-1, -1};
1200 cycpp_shape_core = std::vector<int>(rawcycpp_shape_core, rawcycpp_shape_core + 2);
1201 int rawcycpp_shape_spent[2] = {-1, -1};
1202 cycpp_shape_spent = std::vector<int>(rawcycpp_shape_spent, rawcycpp_shape_spent + 2);
1203 int rawcycpp_shape_discharged[1] = {-1};
1205 int rawcycpp_shape_res_indexes[3] = {-1, -1, -1};
1207 latitude = m->latitude;
1208 longitude = m->longitude;
1241#line 43 "/cycamore/src/reactor.cc"
1242 cyclus::toolkit::CommodityProducer::Copy(m);
1246 int rawcycpp_shape_latitude[1] = {-1};
1247 cycpp_shape_latitude = std::vector<int>(rawcycpp_shape_latitude, rawcycpp_shape_latitude + 1);
1248 int rawcycpp_shape_longitude[1] = {-1};
1249 cycpp_shape_longitude = std::vector<int>(rawcycpp_shape_longitude, rawcycpp_shape_longitude + 1);
1250 int rawcycpp_shape_fuel_incommods[2] = {-1, -1};
1252 int rawcycpp_shape_fuel_inrecipes[2] = {-1, -1};
1254 int rawcycpp_shape_fuel_prefs[2] = {-1, -1};
1256 int rawcycpp_shape_fuel_outcommods[2] = {-1, -1};
1258 int rawcycpp_shape_fuel_outrecipes[2] = {-1, -1};
1260 int rawcycpp_shape_recipe_change_times[2] = {-1, -1};
1262 int rawcycpp_shape_recipe_change_commods[2] = {-1, -1};
1264 int rawcycpp_shape_recipe_change_in[2] = {-1, -1};
1266 int rawcycpp_shape_recipe_change_out[2] = {-1, -1};
1268 int rawcycpp_shape_assem_size[1] = {-1};
1270 int rawcycpp_shape_n_assem_batch[1] = {-1};
1272 int rawcycpp_shape_n_assem_core[1] = {-1};
1274 int rawcycpp_shape_n_assem_fresh[1] = {-1};
1276 int rawcycpp_shape_n_assem_spent[1] = {-1};
1278 int rawcycpp_shape_cycle_time[1] = {-1};
1280 int rawcycpp_shape_refuel_time[1] = {-1};
1282 int rawcycpp_shape_cycle_step[1] = {-1};
1284 int rawcycpp_shape_power_cap[1] = {-1};
1286 int rawcycpp_shape_power_name[1] = {-1};
1288 int rawcycpp_shape_side_products[2] = {-1, -1};
1290 int rawcycpp_shape_side_product_quantity[2] = {-1, -1};
1292 int rawcycpp_shape_hybrid_[1] = {-1};
1293 cycpp_shape_hybrid_ = std::vector<int>(rawcycpp_shape_hybrid_, rawcycpp_shape_hybrid_ + 1);
1294 int rawcycpp_shape_decom_transmute_all[1] = {-1};
1296 int rawcycpp_shape_pref_change_times[2] = {-1, -1};
1298 int rawcycpp_shape_pref_change_commods[2] = {-1, -1};
1300 int rawcycpp_shape_pref_change_values[2] = {-1, -1};
1302 int rawcycpp_shape_keep_packaging[1] = {-1};
1304 int rawcycpp_shape_fresh[2] = {-1, -1};
1305 cycpp_shape_fresh = std::vector<int>(rawcycpp_shape_fresh, rawcycpp_shape_fresh + 2);
1306 int rawcycpp_shape_core[2] = {-1, -1};
1307 cycpp_shape_core = std::vector<int>(rawcycpp_shape_core, rawcycpp_shape_core + 2);
1308 int rawcycpp_shape_spent[2] = {-1, -1};
1309 cycpp_shape_spent = std::vector<int>(rawcycpp_shape_spent, rawcycpp_shape_spent + 2);
1310 int rawcycpp_shape_discharged[1] = {-1};
1312 int rawcycpp_shape_res_indexes[3] = {-1, -1, -1};
1314 cyclus::QueryResult qr = b->Query(
"Info", NULL);
1315 latitude = qr.GetVal<
double>(
"latitude");
1316 longitude = qr.GetVal<
double>(
"longitude");
1317 fuel_incommods = qr.GetVal<std::vector< std::string > >(
"fuel_incommods");
1318 fuel_inrecipes = qr.GetVal<std::vector< std::string > >(
"fuel_inrecipes");
1319 fuel_prefs = qr.GetVal<std::vector< double > >(
"fuel_prefs");
1320 fuel_outcommods = qr.GetVal<std::vector< std::string > >(
"fuel_outcommods");
1321 fuel_outrecipes = qr.GetVal<std::vector< std::string > >(
"fuel_outrecipes");
1324 recipe_change_in = qr.GetVal<std::vector< std::string > >(
"recipe_change_in");
1325 recipe_change_out = qr.GetVal<std::vector< std::string > >(
"recipe_change_out");
1326 assem_size = qr.GetVal<
double>(
"assem_size");
1334 power_cap = qr.GetVal<
double>(
"power_cap");
1335 power_name = qr.GetVal<std::string>(
"power_name");
1336 side_products = qr.GetVal<std::vector< std::string > >(
"side_products");
1338 hybrid_ = qr.GetVal<
bool>(
"hybrid_");
1345 res_indexes = qr.GetVal<std::map< int, int > >(
"res_indexes");
1349#line 48 "/cycamore/src/reactor.cc"
1351 namespace tk = cyclus::toolkit;
1352 tk::CommodityProducer::Add(tk::Commodity(
power_name),